WP2Static – một chiều hướng mới trong việc cải thiện hiệu suất, tốc độ WordPress

Thời gian gần đây tôi phát hiện một plugin mới có tên WP2Static giúp đỡ rất nhiều trong việc cải thiện tốc độ website sử dụng WordPress. Ý tưởng lõi thì không mới chút nào nhưng nó được thiết kế với vài điều chỉnh mà tôi nghĩ có thể rất phù hợp trong một số kiểu trang web.

Ý tưởng vẫn thế thôi: sử dụng trang web tĩnh để cải thiện tốc độ website, nhưng ở đây thay vì sử dụng plugin cache kiểu W3 Total cache, WP-Rocket thì plugin này biến website thành tĩnh hoàn toàn.

Khác biệt ở đâu? Tôi sẽ trình bày dưới dạng bảng cho dễ so sánh:

 WP2StaticPlugin cache thông thường
Biện pháp tối ưuTrang tĩnhTrang tĩnh
Loại bỏ hoàn toàn MySQLKhông
Loại bỏ hoàn toàn PHPKhông
Loại bỏ các tác vụ background như cập nhật, ping back, track backKhông
Vẫn sử dụng pluginHoàn toàn KhôngVẫn dùng, dù ít dù nhiều
Bảo mậtĐược cho là Tốt hơnKém hơn
Chi phíCó thể rẻ hơn nhiềuThường đắt hơn

Tuy nhiên vì WP2Static biến trang WordPress thành trang tĩnh hoàn toàn, nó sẽ không thích hợp nếu website của bạn có bất cứ yếu tố động nào, kể cả bình luận, tìm kiếm, tham gia khảo sát và đặc biệt là trang thương mại điện tử truyền thống có giỏ hàng. Nó cũng không thích hợp cho diễn đàn – một kiểu trang vốn có yếu tố động lớn.

Riêng về mặt chi phí, nếu website của bạn không có lưu lượng truy cập lớn (các trang lớn cũng cần MySQL lớn và phải tối ưu hóa định kỳ) thì việc sử dụng WP2Static không giúp tiết kiệm chi phí đáng kể về giá trị tuyệt đối.

Do vậy nhìn chung, WP2Static chỉ phù hợp với website thỏa mãn hai điều kiện sau:

  • Là trang tĩnh hoàn toàn (*)
  • Có lưu lượng truy cập đủ lớn để lợi ích tiết kiệm chi phí là đáng kể (**)

(*): tĩnh hoàn toàn ở đây có nghĩa tương đối, vì bạn vẫn có thể tạo ra một trang tĩnh hoàn toàn trên host của bạn nhưng vẫn cho phép người dùng các tính năng động bằng cách sử dụng chức năng của bên thứ ba để bổ sung. Dễ thấy nhất là chức năng bình luận và tìm kiếm, cả hai đều có giải pháp miễn phí chất lượng cao cho bạn chọn.

(**): một website mà bạn ngừng phát triển (hoặc tạm dừng trong thời gian dài) thì dù nhỏ, việc chuyển sang trang tĩnh hoàn toàn sẽ giúp bạn gần như không tốn kém gì so với phải duy trì trang WordPress động. Lợi ích này sẽ lớn nếu bạn có nhiều trang kiểu như vậy.

Giờ tôi sẽ đi vào phần giới thiệu chi tiết. Phần này được dịch từ trang tiếng Anh chính thức của plugin trên WordPress.Org

Mô tả

Website được bảo mật tốt hơn và nhanh hơn thông qua xuất bản website tĩnh. Đây là plugin giúp bạn giải quyết một trong các vấn đề lớn nhất của WordPress.

Bạn vẫn tiếp tục sử dụng WordPress cho mục tiêu quan trọng nhất – đó là quản lý nội dung, nhưng loại bỏ được các vấn đề về hiệu suất và bảo mật bằng cách xuất trang HTML tĩnh.

Trang web tĩnh loại bỏ tất cả các vấn đề liên quan đến cập nhật WordPress, giao diện hoặc plugin.

Một trang web tĩnh được tạo sẵn sẽ cho tốc độ tốt hơn so với plugin cache, cho phép bạn phục vụ tốc độ ở cấp local tới người dùng cuối trên toàn thế giới.

Tất nhiên nó không thích hợp với Woo Commerce hoặc trang có thành viên (ví dụ: diễn đàn), nhưng các giải pháp kiểu như Snipcart (ứng dụng của bên thứ ba) cho phép bạn có được trang thương mại điện tử ngay cả trên website tĩnh.

Tính năng

  • Xuất bản một bản sao HTML tĩnh và độc lập cho toàn bộ trang web WordPress của bạn.
  • Xóa các dấu hiệu nhận biết trang web của bạn đang chạy trên nền tảng WordPress, khiến nó không hấp dẫn với hacker.
  • Tự động triển khai đến một thư mục trên máy chủ của bạn, tệp ZIP, FTP, S3, GitHub, Netlify, BunnyCDN, BitBucket hoặc GitLab.
  • Lên lịch xuất dữ liệu tự động không cần giám sát thông qua plugin WP Crontrol hoặc bằng cách sử dụng hook tùy chỉnh.
  • Thông báo trên màn hình desktop cho bạn biết khi nào xuất xong.

Các lợi ích

  • Bảo vệ bạn khỏi các cuộc tấn công độc hại / malware.
  • Tăng tốc WordPress bằng cách loại bỏ hoàn toàn cơ sở dữ liệu hoặc việc phải thực thi bất kỳ đoạn mã PHP nào.
  • Cho phép bạn host trang trên các nền tảng miễn phí như GitHub, Netlify hoặc AWS S3, Azure, vân vân.
  • Cho phép bạn triển khai các tùy chọn lưu trữ siêu nhanh như S3 – cái là nền tảng của CloudFront.
  • Có quá trình phát triển ổn thỏa -> staging (trang demo dùng để kiểm tra) -> quy trình sản xuất và tích hợp với các công cụ CI của bạn.

Những ai thích hợp dùng

  • Các Agencies mảng Digital có nhiều website phải quản lý, không muốn lo lắng về việc cập nhật WP/plugin cho trang của khách hàng.
  • Các maketer online có thể tạo nhiều trang/langding page một cách nhanh chóng với tốc độ cao và host miễn phí.
  • Những chủ trang web cá nhân và người tạo nội dung thích các tính năng của WordPress nhưng không muốn lo lắng về vấn đề bảo mật.
  • Những người làm việc tại các tập đoàn lớn không thích phải xử lý các vấn đề liên quan đến WordPress, điều này cho phép họ loại bỏ các lỗ hổng bảo mật, và có quyền tự chủ cao hơn với hosting.
  • Những ai quan tâm đến vấn đề chi phí, thích các giải pháp hosting miễn phí (có ai không thích đồ miễn phí cơ chứ!).
  • Các Agencies cấp độ chính phủ có yêu cầu khắt khe về bảo mật, nhưng người dùng của họ lại thích sử dụng WordPress.
  • Những người muốn sử dụng nó để lưu trữ một trang web WordPress cũ (rất ít khi có nội dung mới), giữ cho nội dung trực tuyến, nhưng không phải lo lắng về việc cập nhật WordPress (và chắc chắn, chi phí cũng như tốc độ đều tốt hơn).

Plugin này giúp tạo ra phiên bản HTML tĩnh của trang WordPress, rất hữu ích cho những ai muốn tận dụng sức mạnh của WordPress nhưng hosting của họ lại không cho phép xử lý trang PHP động – chẳng hạn như các trang GitHub. Bạn có thể chạy trang PHP trên một tên miền độc lập hoặc để nó offline, và plugin sẽ thay đổi tất cả URL liên quan khi bạn xuất bản website. Đây là plugin đơn giản nhưng đầy sức mạnh, và sau khi bạn nhấn nút xuất bản, plugin sẽ xuất file ZIP chứa toàn bộ website, sẵn sàng để bạn tải thẳng lên ngôi nhà mới!

Cách cài đặt

Đây là các tiền đề cơ bản:

Bạn cần 2 URL thuộc loại nào đó (chúng có thể ở trên cùng một máy chủ, các máy chủ khác nhau, tên miền phụ, vân vân).

  • URL đầu tiên là nơi bạn lưu giữ WordPress – trang này không cần phải có khả năng truy cập hoặc được biết đến đối với bất kỳ ai – ngoại trừ bạn, nếu bạn là người duy nhất làm việc với nội dung website
  • URL thứ hai là nơi bạn sẽ “xuất bản” phiên bản tĩnh của trang web. Đây có thể là tên miền chính của bạn (ví dụ: https://example.com).

Điều này có nghĩa là, bạn có thể cài đặt plugin và thực hiện kiểm thử dễ dàng mà không cần bất kỳ cấu hình nào khác. Plugin WP2Static sẽ xuất bản một phiên bản tĩnh cho thư mục con, chẳng hạn như http://example.com/mystatictest/. Đây là cách tốt để kiểm tra trang tĩnh đã được xuất bản đúng cách hay chưa, sau đó bạn có thể chuyển sang tùy chọn triển khai khác, chẳng hạn như FTP hoặc trang GitHub và triển khai tới trang web online của bạn.

Vì WordPress cho phép tùy chỉnh và cấu hình không giới hạn, tôi không nghĩ rằng có bất kỳ tác giả plugin nào chắc chắn đảm bảo khả năng tương thích hoàn toàn với mọi giao diện, plugin khác và đoạn mã tùy chỉnh trên tất cả các trang web. Nhưng mục tiêu của tôi (tác giả plugin) là có được số % người dùng cao nhất có thể để tận dụng lợi thế của việc lưu trữ tĩnh với trang WordPress của họ.

Plugin được phát triển bởi Leon Staffordf. Nếu bạn có bất kỳ câu hỏi nào về cách sử dụng, cài đặt hoặc phát triển plugin này, vui lòng gửi email cho tác giả tại: help@wp2static.com

Tôi (người dịch) mới bổ sung thêm các tài liệu liên quan đến cơ chế hoạt động của WP2Static để các bạn tham khảo nhằm tận dụng được tối đa sức mạnh của nó:

Vài suy nghĩ của người dịch

Phần này là tóm tắt và tổng kết, các ý của nó có sẵn ở phần trên, ở đây tôi chỉ nhấn mạnh một lần nữa cho rõ ràng.

Như bạn có thể thấy, về tổng thể WP2Static đem lại 3 lợi ích lớn:

  • Cho website tốc độ cao hơn: nhờ việc không phải trích một lượng đáng kể tài nguyên cho MySQL và xử lý PHP, cũng như các tác vụ ngầm đi kèm với WordPress động.
  • Bảo mật hơn: nhờ việc chỉ có trang tĩnh hoàn toàn không có lỗ hổng bảo mật liên quan đến WordPress.
  • Có các hosting miễn phí cho kiểu website tĩnh như thế này: do không cần MySQL và xử lý PHP, hosting cho trang tĩnh có thiết kế rất đơn giản cho phép nhiều dịch vụ cung cấp gói miễn phí có chất lượng đủ dùng.
  • Chỉnh sửa dễ dàng: vì biến thành trang tĩnh HTML, những ai có am hiểu về HTML, CSS và JavaScript có thể dễ dàng tùy biến trên các trang theo ý thích. Việc tùy biến trên trang động WordPress thường không hiệu quả, vì mã ở phần biên tập chưa phải là mã chính thức hiển thị ra bên ngoài cho người dùng. Ví dụ nếu bạn muốn sử dụng thư viện lazy load ảnh như lazysizes, sẽ rất khó khăn khi triển khai trên trang động, nhưng trên trang tĩnh, việc này sẽ dễ dàng hơn nhiều.

Ngoài ra nó không mâu thuẫn với các biện pháp tăng tốc khác như nén ảnh, lazy load ảnh, lazy load video, critical CSS hay defer JavaScript.

Vậy nhược điểm của nó là gì?

  • Chỉ thích hợp nhất cho các trang tĩnh hoàn toàn: Điều này có nghĩa là nếu website của bạn cần các yếu tố động như bình luận, giỏ hàng, vân vân bạn sẽ không sử dụng được plugin này. Giải pháp trung gian duy nhất là sử dụng dịch vụ của bên thứ ba. Tuy nhiên dịch vụ của bên thứ ba có thể có vấn đề về tốc độ hoặc/và chi phí, mà đây lại chính là 2 thứ mà bạn muốn giải quyết khi sử dụng plugin WP2Static.
  • Tiết kiệm chi phí với hosting miễn phí không phải là thứ không có nhược điểm nào: Dù host cho các trang tĩnh chỉ cần công nghệ đơn giản nên có nhiều dịch vụ miễn phí cho phép lưu trữ, nhưng bạn cần nhớ rằng nhiều dịch vụ trong số đó là freemium (ví dụ như netlify), nghĩa là gói miễn phí là gói thấp nhất để nhà cung cấp dịch vụ hy vọng là bạn sẽ nâng cấp lên các gói trả phí cao hơn. Nói cách khác, gói miễn phí sẽ có nhiều hạn chế (vì nó chỉ là thính mà thôi), điều đó đồng nghĩa với việc các trang web thương mại hoặc có lưu lượng truy cập lớn thực sự không được hưởng lợi ích từ gói miễn phí. Ngược lại, nếu bạn có website nhỏ, không quá lăn tăn về vấn đề uptime, thì plugin WP2Static có thể giúp bạn tối thiểu hóa chi phí hosting.
  • Các trang thường xuyên cập nhật có thể thấy phiền phức: Tôi không rõ phiên bản có phí của plugin này có cho phép cập nhật tự động các trang tĩnh không khi có sự thay đổi từ trang động (ví dụ khi bạn thêm một đoạn mới, thêm liên kết mới vào bài viết). Tuy nhiên với phiên bản miễn phí, việc cập nhật thường xuyên sẽ yêu cầu bạn phải tự tay cập nhật các trang tĩnh theo. Cập nhật: hiện phiên bản 7 của plugin cho phép các cập nhật diễn ra nhanh hơn nhiều, vì được triển khai theo phương pháp lũy tiến, chỉ các nội dung nào cập nhật, chỉnh sửa, xóa, thêm mới phải tạo lại trang tĩnh, thay vì phải tái tạo lại toàn bộ như trước kia. Tuy nhiên các yếu tố động khác như cập nhật giao diện, menu, plugin không kích hoạt tái tạo trang tĩnh nên vẫn có khả năng trang tĩnh không phản ánh đầy đủ những gì thực sự được triển khai trên trang demo (trang WordPress động).

Làm thế nào để đưa ra lựa chọn tốt nhất?

Rõ ràng WP2Static là plugin thú vị, nhưng để sử dụng nó một cách phù hợp, bạn cần hiểu rõ website và các nhu cầu quan trọng nhất với người dùng để đưa ra các lựa chọn đánh đổi.

Nó cũng cần bạn am hiểu về dịch vụ của bên thứ 3 để khỏa lấp những vấn đề động mà trang tĩnh không thể đáp ứng được. Một thí dụ tiêu biểu là các bình luận, tìm kiếm. Đây là mảnh đất màu mỡ mà bạn khai thác được để vừa có được trang tĩnh mà vẫn có yếu tố động miễn phí.

Leave a Comment