Trì hoãn tải script của bên thứ ba (các dịch vụ của Facebook, Google, live chat…) trong WordPress để tăng tốc độ load web.
Trước đây, tôi đã từng rất nhiều lần phải giải thích với khách hàng rằng website của họ load chậm hay điểm test tốc độ thấp là do họ chèn quá nhiều script của bên thứ ba (Google, Facebook, live chat…). Những dữ liệu này không thể tối ưu được, chỉ có 1 trong 2 lựa chọn là dùng và chấp nhận chậm hoặc bỏ chúng đi. Tuy nhiên, giờ đây, mọi chuyện đã khác. Sau một thời gian dày công nghiên cứu, tôi đã tìm ra cách để giải quyết được vấn đề. Để không làm mất thời gian của một số bạn thì đây hoàn toàn không phải là một bài chia sẻ thủ thuật hay hướng dẫn cách làm. Chúng tôi đang quảng cáo dịch vụ của mình và nếu bạn có nhu cầu thì hãy dành ít phút để cùng tìm hiểu qua nhé.
Tham khảo thêm:
- Tải không đồng bộ JavaScript trong WordPress mà không dùng plugin
- Chuyển tất cả JavaScript xuống footer trong WordPress
Tại sao cần trì hoãn tải script của bên thứ ba?
Những dữ liệu tải từ server của bên thứ ba như Google (Google Ads, Google AdSense, Google Analytics, Google Tag Manager…), Facebook (Facebook Page Widget, Facebook Messenger, Faceboom Comments, Facebook Pixel…), hay các dịch vụ live chat (Tawk.to, uhChat…)… là những dữ liệu không thể tối ưu được. Bạn không thể nén, gộp hay thiết lập cache cho chúng. Nguyên nhân đơn giản vì chúng không nằm trên host của bạn. Những dữ liệu này thường rất nặng và gây ra các vấn đề nghiêm trọng liên quan đến tốc độ load của website. Để thấy rõ điều này, các bạn có thể dùng Google PageSpeed Insights, GTmetrix hay các công cụ test tốc độ.
Và vì không thể tối ưu được nên giải pháp duy nhất để tích hợp các dịch vụ kể trên vào website của bạn mà không gây ảnh hưởng tới tốc độ load chính là trì hoãn việc tải của chúng. Hiểu một cách đơn giản thì script của chúng chỉ được thực thi một khi các thành phần khác của website đã tải hoàn tất. Nghe đến đây nhiều bạn sẽ nghĩ ngay đến các kỹ thuật như async hay defer JS. Tuy nhiên, cái mà tôi đang nói đến là delay (trì hoãn). Chúng khác nhau ở chỗ async và defer JS được thực hiện ngay sau khi các thành phần khác được tải, còn delay thì có quãng thời gian nghỉ. Khoảng thời gian này có thể tính theo giây, theo phút, thậm chí là… theo giờ tùy theo nhu cầu của bạn.
Ví dụ: bạn chèn Facebook Messenger vào website của mình và thiết lập cho nó chỉ bắt đầu hiển thị sau 5 giây kể từ khi website đã hoàn tất việc tải những dữ liệu khác. WP Căn bản cũng đang chèn widget Facebook Messenger.
Tuy nhiên, khi test tốc độ với Google PageSpeed Insights, site của tôi vẫn đạt điểm gần như tuyệt đối và không có bất cứ lỗi nào liên quan đến Facebook được đề cập trong báo cáo. Widget Facebook Messenger cũng không xuất hiện trong ảnh chụp màn hình của Google.
- Mobile:
- Desktop:
Chúng ta cũng có thể làm điều tương tự với các dịch vụ khác, miễn là chúng sử dụng script để nhúng dữ liệu vào website.
Dịch vụ tối ưu website WordPress của WP Căn bản
Như đã đề cập ở phần đầu của bài viết, chúng tôi sẽ không chia sẻ thủ thuật này một cách rộng rãi mà chỉ nhận làm dịch vụ (trả phí) cho những khách hàng có nhu cầu.
- Đối với các khách hàng có website đang sử dụng dịch vụ WordPress Hosting do WP Căn bản cung cấp: các bạn sẽ vẫn được hỗ trợ tối ưu website WordPress miễn phí theo danh sách được ghi trong phần nội dung công việc. Tuy nhiên, nếu các bạn muốn trì hoãn script của bên thứ 3 để tăng tốc độ load web và điểm số thì chúng tôi sẽ phải phụ thu thêm chi phí.
- Đối với các khách hàng khác: chúng tôi chỉ nhận xử lý vấn đề trì hoãn script của bên thứ ba, không nhận tối ưu các vấn đề khác.
Các script của bên thứ ba mà chúng tôi có thể trì hoãn bao gồm:
- Facebook Page Widget (Facebook Like Box)
- Facebook Messenger (Facebook Chat)
- Facebook Comments
- Facebook Pixel (Facebook Ads)
- Google AdSense
- Google Ads (Google AdWord)
- Google Analytics
- Google Tags Manager
- Các dịch vụ live chat (Tawk.to, uhChat, Zendesk…)
- Các script hỗ trợ chạy quảng cáo, marketing
- Các script hỗ trợ thống kê số người truy cập
Và tất tần tật các thể loại script của bên thứ ba khác, miễn là chúng được nhúng vào website WordPress của bạn thông qua file .js
hoặc inline script.
Số tiền mà khách hàng phải trả sẽ phụ thuộc vào số lượng script cần trì hoãn. Vui lòng liên hệ với chúng tôi để nhận được báo giá chi tiết. Xin cảm ơn!
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. 🙂
Trả lời