Khi gặp 1 trang web bị lỗi ảnh ở 1 vài khung hình nào đó. VD 600w, 100vw, 1024w, 768w, 2048w
Link web lỗi: https://xenang.com/dich-vu-cho-thue-xe-nang-hang-tai-tp-hcm/
Nguyên nhân là do 1 số ảnh ở kích thước khác nhau bị mất, bị lỗi:
- https://xenang.com/wp-content/uploads/2024/10/dich-vu-cho-thue-xe-nang-hang-tai-tp-hcm-gia-uu-dai-915-13.jpg -> OK
- https://xenang.com/wp-content/uploads/2022/02/cho-thue-xe-nang-hang-600×450.jpg -> Lỗi
- https://xenang.com/wp-content/uploads/2022/02/cho-thue-xe-nang-hang-1024×768.jpg -> Lỗi
- https://xenang.com/wp-content/uploads/2022/02/cho-thue-xe-nang-hang-400×300.jpg -> Lỗi
- https://xenang.com/wp-content/uploads/2022/02/cho-thue-xe-nang-hang-768×576.jpg -> Lỗi
- https://xenang.com/wp-content/uploads/2022/02/cho-thue-xe-nang-hang-1536×1152.jpg -> Lỗi
- https://xenang.com/wp-content/uploads/2022/02/cho-thue-xe-nang-hang-2048×1536.jpg -> Lỗi
Cách xử ý: Thêm đoạn code sau vào file functions.php của theme để ngăn chặn web tạo ra nhiều phiên bản url ảnh khác nhau:
// Loại bỏ thuộc tính 'srcset' từ thẻ ảnh
add_filter( 'wp_calculate_image_srcset', '__return_false' );
// Loại bỏ thuộc tính 'sizes' từ thẻ ảnh
add_filter( 'wp_calculate_image_sizes', '__return_false' );
// Loại bỏ 'sizes' và 'srcset' cho các ảnh trong phần content
function disable_srcset_and_sizes($content) {
// Loại bỏ thuộc tính sizes
$content = preg_replace( '/\s*sizes="[^"]+"/i', '', $content );
// Loại bỏ thuộc tính srcset
$content = preg_replace( '/\s*srcset="[^"]+"/i', '', $content );
return $content;
}
add_filter( 'the_content', 'disable_srcset_and_sizes' );
Kết quả sau khi sử dụng hàm