Categories Static website

Một số kinh nghiệm tạo trang tĩnh cho WordPress

tạo trang tĩnh

Cuối cùng tôi quyết định cho cả 3 trang web gồm freehost.page, speed.family và kiencang.net thành trang tĩnh hoàn toàn. Trước đây chúng đều là trang sử dụng WordPress, tạm thời tôi cho chúng ngủ đông khoảng vài năm nên chuyển sang dạng tĩnh sẽ là cách tiết kiệm chi phí và công sức bảo trì nhất.

Hôm nay tôi sẽ nói về một số kinh nghiệm khi thực hiện việc chuyển đổi này.


1. So sánh ưu và nhược điểm của trang động và trang tĩnh

So sánh Trang động (WordPress / PHP) Trang tĩnh (HTML)
Tốc độ Chậm hơn Nhanh hơn
Bảo mật Trung bình Tốt hơn đáng kể
Giá Trung bình, khoảng 6 – 10$ / 3 website Rẻ hơn đáng kể, khoảng 1 – 2$ / 3 website (tổng 50 – 100 ngàn view / tháng)
SEO Tốt Khá, nhưng nếu biết cài đặt thì cũng không thua kém đáng kể
Khả năng cập nhật, chỉnh sửa, viết bài mới Cao Thấp
Chức năng bình luận Có dễ dàng theo mặc định Cần nhờ ứng dụng của bên thứ ba
Chức năng tìm kiếm Có dễ dàng theo mặc định Cần nhờ ứng dụng của bên thứ ba
Bảo trì Cần thực hiện định kỳ Hầu như không phải làm gì

Tóm gọn lại, bạn chỉ nên sử dụng trang tĩnh trong trường hợp muốn tiết kiệm chi phí tối đa vs trang của bạn rất ít khi cập nhật (mà tôi nói đùa ở trên là ngủ đông).


Plugin tôi dùng để chuyển trang động WordPress thành trang tĩnh là Simple Static, ưu điểm của nó là miễn phí, rất dễ dùng và trong quá trình triển khai tôi không thấy gặp lỗi nào.

Có một lưu ý nhỏ ở phần cài đặt để tốt cho SEO, bạn nên để URL tuyệt đối (thay vì tương đối theo mặc định) giống như thế này:

URL tuyệt đối

Bạn thay tên miền speed.family trong hình bằng tên miền của bạn, và nhớ chọn https nếu bạn cũng đang dùng https.


Nơi tôi lưu trữ các file tĩnh là BunnyCDN, một dịch vụ CDN có chất lượng tốt và giá thành thân thiện.

Có một số lưu ý khi dùng Bunny làm nơi lưu trang tĩnh là:

  • Để tiện up các trang tĩnh lên bạn nên dùng chức năng FTP với các thông số mà Bunny cung cấp thay vì sử dụng trực tiếp giao diện tải lên. Sử dụng FTP sẽ nhanh hơn và dễ hơn.
  • Bạn không cần dùng chức năng Prema-cache vì bản thân trang và các tài nguyên đã lưu ở các Storage Zones rồi.

2. Các plugin/chức năng cần vô hiệu hóa trước khi chuyển thành trang tĩnh

Khi chuyển thành trang tĩnh thì các plugin/chức năng sau có khả năng không cần thiết nữa. Bạn có thể vô hiệu hóa mà không gặp vấn đề gì:

  • Akismet Anti-Spam: để chống bình luận spam, tuy nhiên trên trang tĩnh các yếu tố động như bình luận mặc định của WordPress không hoạt động, nên ta cũng không cần plugin này.
  • Jetpack: plugin đa ứng dụng có chất lượng tốt này có nhiều tính năng cần xác thực bạn dùng nền tảng WordPress thì mới dùng được. Khi bạn chuyển sang trang tĩnh nghĩa là bạn chỉ có hình hài WP thôi, còn phần lõi không có kết nối nữa, nên bạn cũng vô hiệu hóa được.
  • UpdraftPlus: đây là plugin backup, và chức năng này cũng không hoạt động trên trang tĩnh, nên bạn cũng nên vô hiệu hóa trước khi chuyển sang trang tĩnh.
  • Chức năng cache: khi bạn chuyển sang trang tĩnh, thì mặc định nó tương đương với trang đã cache khi dùng PHP rồi, nên bạn cũng không cần tính năng tạo cache nữa.
  • Chức năng tìm kiếm: chức năng mặc định của WP chỉ khả dụng với trang PHP động nên việc chuyển sang trang tĩnh làm nó không hoạt động, và bạn nên loại bỏ đi.

Một cách tổng quát thì bất cứ tính năng nào cần PHP động mới chạy được thì bạn nên loại bỏ, vì nó sẽ không chạy trên trang tĩnh đâu.

Ngoài ra các theme không dùng, plugin không dùng bạn cũng loại bỏ luôn để quá trình chuyển sang trang tĩnh được nhanh nhất có thể.


3. Kiểm tra các liên kết gãy trên trang

Khi bạn chuyển sang trang tĩnh, việc chỉnh sửa bài viết không còn dễ dàng nữa, do vậy bạn cần một website hoàn hảo nhất có thể được. Điều đó bao gồm việc hạn chế tối đa liên kết gãy trên trang.

Cách làm: bạn dùng plugin Broken Link Checker để kiểm tra liên kết gãy trước khi xuất trang tĩnh. Plugin này kiểm tra liên kết gãy rất tốt, bao gồm cả liên kết ra bên ngoài, liên kết nội bộ, liên kết ảnh và tài nguyên media nói chung.

Tùy vào số lượng bài viết, tài nguyên của bạn, độ mạnh yếu của hosting gốc thời gian kiểm tra có thể nhanh hay chóng. Thường độ một tiếng nó check được 300 – 500 liên kết. Bạn đợi sau khi nó kiểm tra xong thì sửa lại các liên kết gãy. Nên sửa luôn ở giao diện chỉnh sửa (thay vì vào trực tiếp bài viết để sửa) của nó để việc cập nhật được thực hiện dễ dàng, đồng bộ hơn.

Plugin này rất có ích nếu trang của bạn phát triển một thời gian dài rồi.


4. Xóa các tài nguyên media không dùng

Trang phát triển một thời gian dài, chia tách nội dung với các website khác, hoặc từng xóa nhiều bài cũ kém chất lượng chẳng hạn, thì sẽ có khả năng có nhiều tài nguyên (thường là ảnh) không sử dụng đến. Và bạn cũng nên loại bỏ các dữ liệu không cần thiết này.

Plugin làm việc trên rất tốt là Media Cleaner. Tuy nhiên dù rất tốt, nó cũng không chính xác 100%, nên bạn cần backup website, rồi sau đó kiểm tra lại bằng plugin kiểm tra liên kết gãy Broken Link Checker ở trên để xem nó có xóa nhầm ảnh nào cần dùng không. Nếu nó xóa nhầm, bạn lấy các ảnh ở thư mục wp-content ở backup mà bù vào.

Ở kinh nghiệm cá nhân, khi tôi thử với Media Cleaner nó đã giúp tôi loại bỏ khoảng 500MB dữ liệu ảnh, với mức độ chính xác rất cao. Nó vẫn xóa nhầm một số ảnh, nhưng tôi dễ dàng khắc phục điều đó bằng cách vào thư mục backup để thay thế.


5. Nhớ lưu backup

Bạn cần lưu backup cho trang WordPress của bạn, dự phòng trường hợp bạn muốn dùng lại trang WP động, chẳng hạn như khi bạn muốn chỉnh sửa gì đó có tính chất toàn trang, hoặc thậm chí là tiếp tục phát triển website sau thời gian dài ngủ đông.

2 plugin tôi khuyên dùng để backup là (tôi khuyên bạn dùng cả hai):

  • UpdraftPlus: free và là cách tốt nhất.
  • All in one WP Migration: free khi xuất file, nhưng khôi phục lại cần mua plugin với các trang có dung lượng trên 512MB. Đây sẽ là cách dự phòng.

Dĩ nhiên, bạn nên backup trước khi xóa các plugin mà trang tĩnh không cần, nhưng trang động khôi phục sau này vẫn cần.


6. Tạo các file robots.txt và sitemap.txt

Khi bạn lưu trang tĩnh trên CDN, nó có thể không hỗ trợ sitemap dạng XML, do vậy mà bạn cần thay thế bằng sitemap dạng khác, và .txt là lựa chọn tốt.

Để tạo sitemap không giới hạn số lượng liên kết với dạng file .txt bạn có thể dùng công cụ trực tuyến này: http://www.check-domains.com/sitemap/index.php. Bạn nhớ tick vào Text sitemap ở phần Optional Sitemap Types, để nó tạo sitemap ở định dạng mong muốn.

Quá trình tạo sitemap có thể khá lâu, tầm 15 – 20 phút cho website có 500 trang.

Sau khi tạo sitemap xong, bạn nên cập nhật nó trên Google Search Console, thay thế cho sitemap cũ mà WordPresss tạo trước đây.

Còn với file robots.txt bạn cứ để nó như cũ. Cụ thể thì nội dung của nó thế này:

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php

7. Kiểm tra lại

Bạn chắc chắn cần kiểm tra lại sau khi up các trang tĩnh lên CDN để xem nó có bị sai lệch gì không so với trang động.

Bạn cũng nên dùng công cụ trực tuyến như Online Broken Link Checker để kiểm tra lại lần nữa các liên kết gãy trên trang (dự phòng quá trình tạo trang tĩnh tạo thiếu sót một trang nào đó).

Back to Top