Lazyload hình ảnh trong WordPress với plugin Native Lazyload chính thức từ Google.
Kể từ phiên bản Chrome 76, bạn đã có thể sử dụng thuộc tính tải (loading) mới để tải tài nguyên “lười biếng” (lazy-loading) mà không cần phải viết các đoạn code lazy-loading tùy chỉnh hoặc sử dụng thư viện JavaScript riêng. Nếu bạn chưa biết thì lazy-loading là một tính năng cho phép trình duyệt web chỉ tải các nội dung như hình ảnh khi người dùng cuộn trang tới. Điều này cho phép giảm thời gian load web của bạn do trình duyệt web chỉ phải tải những phần nội dung đang được hiển thị trên màn hình thay vì tải tất cả cùng một lúc. Google đồng thời cũng đã phát hành plugin “chính chủ”, giúp các blogger/ webmaster có thể triển khai tính năng này một cách dễ dàng trên nền tảng WordPress.
Tham khảo thêm:
- Vô hiệu hóa lazy load hình ảnh mặc định của WordPress
- Hướng dẫn lazyload hình ảnh với plugin LiteSpeed Cache
Lazyload hình ảnh với plugin Native Lazyload
Tất cả những gì các bạn cần phải làm là cài đặt và kích hoạt plugin Native Lazyload được phát hành miễn phí trên kho plugin của WordPress.org (link download).
Trước đó, nhớ vô hiệu hóa chức năng lazyload hình ảnh của theme hoặc các plugin khác để tránh xung đột.
Tại sao bạn nên chọn Native Lazyload?
Plugin Native Lazyload không có phần thiết lập và nó hoạt động theo nguyên tắc rất đơn giản:
- Nếu thuộc tính
loading
không được trình duyệt web hỗ trợ, plugin sẽ quay trở lại giải pháp JavaScript dựa trênIntersectionObserver
. - Đối với trường hợp JavaScript bị vô hiệu hóa, nhưng thuộc tính
loading
được trình duyệt web hỗ trợ, một biến thểnoscript
của phần tử tương ứng sẽ được thêm vào, bao gồm cả thuộc tínhloading
mà không có bất kỳ thay đổi nào khác.
Native Lazyload không sử dụng JavaScript để lazyload hình ảnh mà sử dụng chính tính năng có sẵn của trình duyệt web Google Chrome (đang chiếm khoảng gần 70% thị phần). Do đó, nó nhẹ và nhanh hơn rất nhiều so với các plugin hay code lazyload khác. Bạn hầu như không thể nhận ra tính năng lazyload đang hoạt động nếu tốc độ mạng và máy tính đủ nhanh (không thấy độ trễ khi load web). Chúng tôi cũng đang sử dụng plugin này trên tất cả hệ thống website của mình.
Kiểm tra xem plugin đã hoạt động hay chưa bằng cách click chuột phải vào 1 hình ảnh trên website của bạn, sau đó chọn Inspect (đối với trình duyệt Google Chrome). Nếu bạn thấy thẻ loading="lazy"
xuất hiện trong mã nguồn HTML thì có nghĩa là plugin đã hoạt động bình thường.
Thật đơn giản phải không nào? Chúc các bạn thành công!
Nếu bạn thích bài viết này, hãy subscribe 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 qua email nhé. Cảm ơn rất nhiều. :)
Admin cho em hỏi, ở trong plugin LiteSpeed Cache em thấy có mục lazy load image : Enable rồi. Tải thêm plugin google lazy này có tác dụng hay ko cần nữa ạ ?
Thank anh !
Không dùng đồng thời 2 tính năng lazyload đâu bạn nhé. Nếu dùng Native Lazyload thì tắt tính năng lazyload của plugin LiteSpeed Cache đi.
Plugin này của GG chả hiểu sao mình thấy nó bị xung đột với plugin Rank Math!
Mình tắt Rank Math đi sử dụng Yoast thì lại bình thường!
Xung đột là chuyện bình thường mà bạn. Đâu ai đảm bảo được một plugin nào đó có khả năng tương thích 100%. Bạn thử plugin Lazy Loading Feature Plugin xem sao. Plugin này có tính năng tương tự và do team của WordPress.org phát triển, chuẩn bị tích hợp thẳng vào trong WordPress luôn.
Mình đã bật luôn chức năng Lazy Load tích hợp sẵn trong Rocket 1h!
Thấy chạy rất oke!
Lazyload của thằng WP Rocket hay LiteSpeed Cache mặc định không phải là native lazyload bạn ạ. Nếu bạn dùng WP Rocket thì thử cài thêm plugin này xem sao. Nó hỗ trợ kích hoạt native lazyload cho WP Rocket.
Cảm ơn bác!
Cho e hỏi thêm: Sau khi cài đặt và kích hoạt có cần phải làm gì khác để kích hoạt chức năng Lazyload này cho WP Rocket không bác?
Làm sao để kiểm tra việc 1 trang đã bật chức năng native lazy load!
Hình như không bạn ạ. Cách kiểm tra thì trong bài viết mình đã có hướng dẫn rồi mà. :P
Bác hướng dẫn tìm trong mã nguồn mà e search rồi nó không có chữ lazy nào cả!
Bạn thử tắt tính năng lazyload của thằng WP Rocket đi xem.
Mình đã tắt nhưng vẫn không có gì khác so với không tắt cả!
Bạn thử Lazy Loading Feature Plugin chưa? Tắt tất cả các tính năng lazyload khác.
Sau khi cài đặt Plugin Lazy Loading Feature Plugin thì đã thành công! Cảm ơn bác Hiếu!
P/s: Và con tim đã vui trở lại!
Cái plugin này nó có bị xung đọt với laziloading của theme flatsome không ạ. tại e cài vào và bật cả lazi loading của theme thấy vẫn chạy bình thường không vấn đề. Không biết có phải tắt hay chạy tốt thì cứ để ạ.
Dùng 1 trong 2 thôi bạn nhé. Dùng cái này thì tắt cái kia và ngược lại.
Chào bác. E cài plugin này vô web xong thì lúc truy cập web nó ko hiện ảnh nữa. Mất hết hình ảnh trên web luôn. Cho e hỏi là nó bị gì và cách khắc phục ạ.
1. Bạn kiểm tra thử xem trên website có cài plugin nào với tính năng tương tự không. Hoặc theme có tích hợp sẵn tính năng lazyload hình ảnh không? Nếu có thì tắt đi.
2. Thử cài plugin Lazy Loading Feature Plugin mình để link ở cuối bài viết xem sao.
Vậy mình không cài plugin đó, mà mình thêm thủ công như thế này
Thì nó có hoạt động tốt trên các trình duệt không ad ?
Nếu bạn sử dụng phiên bản WordPress từ 5.5 trở lên thì tính năng này đã được tích hợp sẵn rồi, không cần cài plugin hay chèn code gì cả.
Vậy mình không cài plugin đó, mà mình thêm thủ công như thế này:
https://www.upsieutoc. com/images/2020/10/04/Untitled.png
Thì nó có hoạt động tốt trên các trình duệt không ad ?
Bạn bắt buộc phải sử dụng plugin nhé. Không chèn thủ công thế này được. Vì nếu trình duyệt nào không hỗ trợ thì sẽ sử dụng javascript để load.
Bo tròn ảnh thì thế nao admin
Bạn tham khảo ở đây và ở đây nhé. Nó là kiến thức về CSS.
Bản wordpress 5.8 ra mắt theo như lời giới thiệu thì hỗ trợ định dạng webp, bác hiếu làm bài hướng dẫn tính năng này nào
Hỗ trợ định dạng WebP ở đây không phải là nó tự động tạo thêm phiên bản WebP cho ảnh JPG/PNG như mấy plugin nén ảnh vẫn thường làm đâu. Đơn giản chỉ là nó cho phép upload ảnh với định dạng WebP lên website WordPress thôi. Trước đây ảnh WebP bị chặn không cho upload trực tiếp. Cho nên không có gì để hướng dẫn cả. Nếu bạn muốn tạo và load ảnh WebP thì vẫn phải sử dụng các plugin nén ảnh của bên thứ 3 thôi. :P
Nếu xài lscached rồi thì không cần xài plugin này nữa phải không bạn
Nếu bạn bật tính năng lazyload hình ảnh trong plugin LiteSpeed Cache rồi thì không cần nữa nhé.