Ngăn WordPress tạo ảnh tự động cực đơn giản
Nội dung chính:
- Tại sao cần ngăn WordPress tạo ảnh ?
- Thêm đoạn code trong function của Theme
Tại sao cần ngăn WordPress tạo ảnh ?
Do cơ chế WordPress mặc định luôn tự động cắt ảnh dưới nhiều kích thước như: 128×128, 364×364… nếu không tối ưu thì dữ hoặc full inode rất bị nhanh đầy.
Đây cũng chính là nhược điểm khi khách hàng sử dụng mã nguồn là WordPress.
Khắc phục: Thêm các đoạn code sau đây vào function.php của theme.
Thêm đoạn code trong function của Theme
1
2
3
4
5
6
7
8
9
10
|
functionremove_default_image_sizes($sizes){
unset($sizes[‘large’]);
unset($sizes[‘thumbnail’]);
unset($sizes[‘medium’]);
unset($sizes[‘medium_large’]);
unset($sizes[‘1536×1536’]);
unset($sizes[‘2048×2048’]);
return$sizes;
}
add_filter(‘intermediate_image_sizes_advanced’,‘remove_default_image_sizes’);
|
Tuy nhiên, nếu khách hàng muốn kích cỡ cố định hoặc muốn custom ảnh.
Ví dụ, muốn thay đổi thuộc tính medium_large, sửa là tên và đoạn (0, 800).
Trong đó, 0 là auto full ảnh là chiều rộng của ảnh, 800 là 800px – chiều dọc của ảnh.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
add_filter(‘intermediate_image_sizes’,function($sizes){
returnarray_diff($sizes,[‘medium_large’]);// Medium Large (768 x 0)
});
add_image_size(‘medium_large’,0,800);
//
add_action(‘init’,‘remove_extra_image_sizes’);
functionremove_extra_image_sizes()
{
$sizes=array();
foreach(get_intermediate_image_sizes()as$size){
if(!in_array($size,$sizes)){
remove_image_size($size);
}
}
}
functionremove_default_image_sizes($sizes){
unset($sizes[‘large’]);
unset($sizes[‘thumbnail’]);
unset($sizes[‘medium’]);
unset($sizes[‘medium_large’]);
unset($sizes[‘1536×1536’]);
unset($sizes[‘2048×2048’]);
return$sizes;
}
add_filter(‘intermediate_image_sizes_advanced’,‘remove_default_image_sizes’);
|
Kết quả:
Cuối cùng, quý khách có thể kiểm tra lại:
Nguồn: https://tenten.vn/help/ngan-wordpress-tao-anh-tu-dong-cuc-don-gian/