Hướng dẫn ngăn chặn tạo thêm ảnh con (thumbnails) không cần thiết trong website WordPress.

Nếu bạn chưa biết thì theo mặc định, ngoài kích thước ảnh gốc, WordPress sẽ tự động tạo thêm 6 kích thước ảnh khác, bao gồm Thumbnail (150 x 150), Medium (300 x 300), Large (1024 x 1024), Medium Large (768 x chiều cao không giới hạn), 1536 x 1536 (Medium Large x 2) và 2048 x 2048 (Large x 2). Trong trường hợp không sử dụng đến 6 kích thước này, bạn có thể vô hiệu hóa Thumbnail, Medium và Large trong phần Media Settings của WordPress Dashboard bằng cách thiết lập các thông số về 0 để tiết kiệm dung lượng host. Ngoài WordPress, theme và các plugin mà bạn cài đặt trên website có thể cũng đang “âm thầm” làm điều tương tự.
Tham khảo thêm:
- Tiết kiệm dung lượng host và cải thiện hiệu suất WordPress
- EWWW Image Optimizer – Plugin nén ảnh miễn phí tốt nhất
Làm thế nào để ngăn chặn triệt để việc tạo thêm các kích thước ảnh con trong WordPress? Rất đơn giản, bạn chỉ cần làm theo 1 trong 2 cách sau đây. Tuy nhiên, trước đó, hãy đảm bảo bạn đã xác định chính xác những kích thước ảnh mà website không cần dùng đến.
Loại bỏ các kích thước ảnh mặc định của WordPress
Chèn đoạn code sau vào cuối file functions.php của theme (hoặc child theme) mà bạn đang sử dụng sẽ giúp vô hiệu hóa toàn bộ 6 kích thước ảnh con do WordPress mặc định tạo ra:
//* Remove WordPress's default image sizes
function remove_default_image_sizes( $sizes) {
unset( $sizes['large']);
unset( $sizes['thumbnail']);
unset( $sizes['medium']);
unset( $sizes['medium_large']);
unset( $sizes['1536x1536']);
unset( $sizes['2048x2048']);
return $sizes;
}
add_filter('intermediate_image_sizes_advanced', 'remove_default_image_sizes');
Các bạn cũng có thể chèn nó thông qua plugin Code Snippets. Phương pháp này nên được áp dụng nếu chỉ có duy nhất WordPress là thành phần tạo thêm các ảnh con không cần thiết trên website của bạn.
Chặn tạo thêm ảnh con trong WordPress bằng plugin
Tùy vào trường hợp, các bạn có thể tham khảo một trong các plugin sau đây:
Sử dụng plugin EWWW Image Optimizer
Nếu bạn đang sử dụng plugin EWWW Image Optimizer để nén ảnh thì xin chúc mừng bởi vì EIO đã được trang bị sẵn một tính năng như vậy. Tất cả những gì bạn cần làm là truy cập vào Settings => EWWW Image Optimizer => Resize =>Disable Resizes => Tick vào các kích thước ảnh không muốn tạo trong cột Disable Creation.

Click vào nút Save Changes để hoàn tất.
Sử dụng plugin Stop Generating Image Sizes
1. Đầu tiên, như thường lệ, bạn phải cài đặt và kích hoạt plugin Stop Generating Image Sizes (download).

2. Tiếp theo, truy cập vào Image Sizes => Tick vào các kích thước ảnh mà bạn muốn ngăn chặn.

Click vào nút Save Changes để hoàn tất.
Xóa bỏ ảnh con đã được tạo trước đó
Cả hai phương pháp kể trên chỉ giúp ngăn chặn tạo thêm ảnh con cho những hình ảnh mà bạn sẽ upload trong tương lai. Chúng không có tác dụng giúp bạn xóa bỏ những ảnh con đã được tạo trước đó. Vì vậy, bạn sẽ cần làm thêm 1 bước nữa, đó là tạo lại kích thước ảnh thumbnail cho toàn bộ hình ảnh đã upload. Thật đơn giản phải không nào? Chúc các bạn thành công!
Bạn biết phương pháp khác đơn giản và hiệu quả hơn giúp ngăn chặn tạo thêm ảnh con trong website WordPress? Đừng quên chia sẻ nó với chúng tôi trong khung bình luận bên dưới.
Nếu bạn thích bài viết này, hãy theo dõi blog của tôi để thường xuyên cập nhật những bài viết hay nhất, mới nhất nhé. Cảm ơn rất nhiều. :)






Mới chuyển sang theme rehub thì phát hiện trang web chậm đáng kể so với trước đây, rồi cũng phát hiện ra ảnh tự động tăng kích thước ảnh. Ảnh tải lên chỉ 750px mà nó tăng lên 1300px rồi kích thước cũng x10 lần, quá hoảng luôn. Mấy cái ảnh cũ vẫn bình thường, còn ảnh mới mà bị tăng kích thước tự động đột nhiên có thông số kích thước ảnh trong tên. Như vậy là do theme phải không bạn?
Thay theme xong thấy bị thì nhiều khả năng là do theme rồi bạn. Mấy cái theme như REHub, jNews, Newspaper… nặng lòi kèn, không hiểu sao mọi người cứ thích dùng. Do nó đẹp ư? Hay là nhiều tính năng? 😅
Đúng là do nó có nhiều tính năng cần dùng, nếu không mua theme ông cho rẻ và nhanh, nhìn tốc độ site ông mà ghiền. Muốn nhanh thì tối ưu thôi à, như trang topthuthuat.com nè, cũng dùng rehub và có quảng cáo đủ kiểu nhưng tốc độ rất nhanh, test chỗ nào cũng điểm cao chót vót, không biết tối ưu kiểu gì. Bạn vào site mình thấy chậm không nhỉ?
Site kia có tối ưu gì đâu? Thậm chí còn không cài cả plugin tạo cache? Chắc họ chi nhiều tiền cho việc mua VPS cấu hình cao. Mình check thấy đang dùng VPS của OVH ở Singapore.
P/s: Site của bạn thì có phản hồi hơi chậm thật. Đừng có dùng mấy cái thủ thuật như Inline CSS hay Remove Unused CSS. Nó không có lợi trên thực tế. Nó làm HTML phình ra, không cache trình duyệt được…
Ồ cảm ơn bạn nhiều. Đúng là mình dùng mấy cái inline css, remove css gì gì đó thật, dùng cái gì check ra hay vậy nhỉ. Mà VPS cấu hình cao hỗ trợ tốc độ nhiều nhỉ, thấy site kia load nhanh.
Máy tính cấu hình cao nó cũng chạy nhanh và mượt hơn mà. Host cũng vậy thôi. Mình xem mã nguồn của website.
sử dụng code trên thì ngăn dc Wordpress tạo ảnh con nhưng mình kiểm tra thấy Woocomece vẫn tạo ảnh con, có code nào ngăn plugin này tạo ảnh con ko a, em ko muốn cài thêm plugin tại nhiều quá rồi @@
Không phải plugin nào cũng gây chậm web nên cần thì cứ thế mà cài thôi bạn. Blog này của mình cũng cài tận 27 cái plugin đây. Thế mạnh của WordPress là plugin mà không tận dụng thì phí quá.
mình kiểm tra trong wp-content thì thấy các hình mình up lên đều bị thêm vào 5 ảnh con của nó, như vậy là host của mình đang bị ngốn gấp đôi tài nguyên, cơ mà chưa dám xóa vì không biết nó còn sử dụng cho mục đích gì khác không @@
Không xóa “bậy” được đâu bạn. Coi chừng web bị lỗi hiển thị hình ảnh đấy. 😅
mình xóa và đã bị lỗi hiển thị, nhờ ad hướng dẫn cách khắc phục
Xóa mà lỗi thì tạo lại là được thôi bạn. Bạn tham khảo bài viết “Tạo lại ảnh thumbnails sau khi thay theme WordPress” nhé.
Vậy làm sao để check được là các kích thước ảnh nào ko dùng đến trên web ạ?
Bạn có thể click chuột phải vào từng ảnh => chọn Inspect => xem URL của ảnh để biết kích thước của nó (thường nằm ở cuối URL) => làm tương tự với những ảnh khác => thống kê được các kích thước ảnh mà website đang sử dụng.
Hiện tại blog của bạn sử dụng cách nào vậy ạ, tại sao blog của mình cấu hình phần media để hết về 0 rùi mà vẫn bị crop ra 6 ảnh bác nhỉ :((
Cái đó chỉ chặn được WordPress tạo ảnh con thôi. Còn theme và plugin vẫn tạo bình thường mà. Cách xử lý thế nào thì mình đã viết rõ trong bài viết rồi. :P
Có nên chỉ giữ nguyên 1 ảnh gốc mà không cho tạo nhiều kích thước khi upload k bác Hiếu, mục đích của việc sinh ra nhiều kích thước để làm gì nhỉ. e tìm hiểu mà chưa hiểu nguyên nhân
Mục đích của việc crop ảnh là để hiển thị ảnh với kích thước phù hợp nhất, tránh việc sử dụng ảnh quá to dẫn đến tăng page-size => làm web load chậm. Ví dụ ảnh đại diện của bài viết trên blog wpcanban.com có kích thước 150 x 150 pixel. Mình thường upload ảnh với kích thước khoảng 400 x 400 pixel. Nếu không crop thành 150 x 150 pixel mà hiển thị luôn ảnh gốc 400 x 400 pixel thì dung lượng ảnh sẽ lớn hơn => page-size lớn hơn => web load chậm hơn.
Thì ra là vậy, giờ tính cả .webp tính ra 1 ảnh up lên sinh ra 10 ảnh chắc mấy chốc mà đầy host
Dùng ảnh WebP thì số lượng ảnh sẽ tăng gấp đôi. Muốn web load nhanh hơn thì phải chấp nhận thôi. :)
Cả hai phương pháp kể trên chỉ giúp ngăn chặn tạo thêm ảnh con cho những hình ảnh mà bạn sẽ upload trong tương lai. Chúng không có tác dụng giúp bạn xóa bỏ những ảnh con đã được tạo trước đó. Vì vậy, bạn sẽ cần làm thêm 1 bước nữa…
xóa bỏ những ảnh con đã được tạo trước đó bằng cách nào vậy a ?
Đọc kỹ lại đi bạn ơi. Mình có để link hướng dẫn rồi mà. :P
Cám ơn bác!!!