Hướng dẫn tăng tốc WordPress toàn diện – có tiền sẽ có nhiều lợi thế hơn

Có thể tiêu đề làm tụt hứng, nhưng thực tế khi muốn tăng tốc WordPress thì có tiền chỉ làm bạn thuận lợi hơn thôi chứ nó không thay thế được các lựa chọn thông minh của bạn. Bài viết này sẽ cung cấp các cách hiệu quả nhất, trong đó có cả những cái không hề tốn một xu nào (nhưng dĩ nhiên là mất công sức!).

Không phải dẫn những nghiên cứu quốc tế, từ kinh nghiệm cá nhân chúng ta đều biết rõ rằng:

Tốc độ website chậm không chỉ gây ảnh hưởng tiêu cực đến trải nghiệm của khách hàng, đánh giá năng lực của chủ web, mà ảnh hưởng luôn đến lượng traffic truy cập. Khách có thể rời khỏi ngay website trước khi nó load xong, hoặc nhẹ nhàng hơn, chẳng muốn xem tiếp trang thứ hai nữa.

Mặc dù bài viết này hướng đến việc tăng tốc WordPress nó cũng rất có ích cho những ai muốn tăng tốc website nói chung. Bởi vì các nền tảng cơ bản vẫn vậy, khác nhau chỉ là công cụ sử dụng mà thôi.

1. Chọn host tốt là yêu cầu cơ bản nhất nếu muốn tăng tốc WordPress

Nghe là biết sẽ tốn thêm tiền rồi! Tuy nhiên…

…Host rẻ, web nặng, traffic nhiều đòi tốc độ WordPress cao thì khó lắm! Nếu bạn muốn web nhanh điều quan trọng nhất với mình là bạn phải chọn được host phù hợp.

Phù hợp ở đây ý mình là phù hợp với kiểu web của bạn và lưu lượng truy cập.

Nếu web bạn nhẹ, truy cập không lớn (dưới 5K view / ngày), bạn chọn host từ 5 đô – 10 đô / tháng vẫn OK.

Nếu là web bán hàng, web chạy Adsense đem lại thu nhập cao, đừng tiếc 1% – 2% tiền lãi cho host. Bên cạnh nội dung chất lượng cao, tăng tốc website là điều quan trọng thứ hai mà mình ưu tiên thực hiện. Trải nghiệm người dùng tốt sẽ đem lại nhiều lợi ích thậm chí vượt hẳn chi phí bạn phải bỏ ra để thuê host ngon.

Host xịn không chỉ có RAM khoẻ, chịu được truy cập lớn, mà phần lớn các host kiểu này đã được tối ưu sẵn nhiều thứ, mà nếu bạn không có chuyên môn thì rất khó tự mình thực hiện.

Các bạn có thể muốn hỏi mình một vài công ty host tốt? Cái này nó thay đổi theo thời gian, 12 tháng sau có khi đã khác nên mình sẽ cố gắng chỉ nêu vài cái tên đã ổn định lâu năm. Tuy nhiên kinh nghiệm chọn lựa là thế này:

  • Nếu hiểu biết về công nghệ và muốn có host tốt, web nhanh, chịu traffic cao thì mua VPS.
  • Nếu không rành công nghệ thì mua các loại host đã được tối ưu, kiểu ăn sẵn, ví dụ một số host được tối ưu riêng cho WordPress.
  • Nói chung thì tiền nào sẽ đi với của đấy. Host giá cao thường đi kèm một số dịch vụ gia tăng như cài đặt đơn giản, backup miễn phí hàng ngày, hỗ trợ nhanh 24/7, thời gian uptime rất cao, phòng trừ malware.
  • Chọn công ty gia nhập thị trường đủ lâu, ít cũng phải được 2, 3 năm. Nhiều đại gia ngành host đã có mặt ở đây 15 – 20 năm rồi.
  • Vào xem những trang web lớn, hoặc web mà bạn thấy nhanh xem họ dùng host của công ty nào, nếu dưới chân trang không thấy, bạn có thể dùng công cụ whoishostingthis để tìm xem web đó dùng host ở đâu?
  • Đa số các công ty host đều có chính sách hoàn tiền lại nếu cảm thấy không ưng í, cái này tuỳ công ty, nhưng thường có thể lên đến 30 ngày trải nghiệm. Do vậy, khi bạn dùng thử một thời gian thấy tốc độ không ưng thì đi luôn, đừng cố đấm ăn xôi.
  • Cái cuối cùng quan trọng này, đọc review thật kỹ, gồm cả review ở các diễn đàn lẫn review của các blogger công nghệ. Các review của các blogger công nghệ có thể bị ảnh hưởng bởi việc họ được ăn % hoa hồng (affiliate) khi có người mua nên phải nghe cả hai tai. Dù sao những tay blogger lớn bản thân họ cần giữ uy tín nên đa số là tin được, nhưng nên nhớ là những tay hàng đầu thôi nhé.

Rồi, giờ nếu bạn muốn nghe vài cái tên thì đây nhé:

  • DigitalOcean (VPS)
  • Linode (VPS)
  • Dreamhost (tối ưu WordPress)
  • Mediatemple (tối ưu WordPress)
  • Lightning Base (tối ưu WordPress)
  • Liquid Web (tối ưu WordPress)

Đa số các trang trên đều có gói thấp nhất là 20 USD / tháng phù hợp với đa số người dùng. Cũng có trang có gói 10 USD.

Hiện tại mình dùng gói VPS 15 USD của Dreamhost cho trang này, mình dùng kèm với vài trang khác nữa, tốc độ tương đối tốt.

2. Chọn giao diện phù hợp

Cách thức tăng tốc WordPress này có thể tốn tiền hoặc không.

Rất giống áo quần ở chỗ nó là cái bề ngoài của bạn, tuy nhiên điểm khác biệt là bạn KHÔNG phải thay nó hàng ngày. Giao diện có thể sử dụng NHIỀU THÁNG, thậm chí là NHIỀU NĂM, do vậy, nếu cảm thấy cần đầu tư thì bạn cũng đừng tiếc tiền.

Ở đây lại nói đến tính phù hợp. Website càng màu mè, nhiều tính năng thì càng nặng vì nó sẽ cần nhiều ảnh, JavaScript và CSS hơn,…Tất nhiên cả những truy vấn đến host nữa.

Do vậy hãy đơn giản tối đa, nghĩa là bạn cần mức nào thì chọn giao diện mức đấy. Bắt buộc cần tính năng nào thì vẫn phải dùng, không thì thôi.

Chẳng hạn như trang này của mình, giao diện không cần bắt mắt, nên mình chọn theme đơn giản với các chức năng cơ bản để tăng tốc WordPress.

sử dụng giao diện đơn giản giúp tăng tốc wordpress

Nhưng cái này cũng cần nói ngược lại, nếu bạn làm các trang yêu cầu bắt mắt như bán đồ mỹ phẩm, thời trang, đồ trang sức,…thì ưu tiên cho tính thẩm mỹ sẽ phải được xét đến.

3. Gỡ bỏ các plugin không dùng

Cách tăng tốc WordPress chẳng làm tốn đồng nào, nó chỉ là việc bỏ đi gánh nặng mà thôi.

Bạn nào dùng WordPress thì biết, cái hay của nó là nó chỉ cài các plugin cơ bản, anh nào cần thì cài thêm plugin cho các tính năng mới. Cũng nhắc luôn, nếu bạn cài thừa mứa plugin, tốc độ website sẽ chậm đi nhiều (cái này cũng giống bạn cài quá nhiều phần mềm trên máy tính sẽ làm máy tính của bạn bị chậm lại).

Ngoài ra, một số plugin tương đối nặng, hoặc gây xung đột, do vậy khi thấy dấu hiệu bất thường cần kiểm tra ngay, thử dừng plugin xem kết quả thế nào.

Bản thân trang này mình cố gắng để nó tối thiểu hoá plugin cần xài, hiện tại vẫn chưa đến 20 plugin:

sử dụng ít plugin giúp giảm tải cho wordpress

4. Tối ưu hoá hình ảnh

Đây là một trong các cách tăng tốc WordPress rẻ tiền nhất.

Nếu bạn nhìn bảng phân tích lưu lượng tải xuống của một trang web bạn có thể thấy hình ảnh chiếm từ 30 – 70% dung lượng (tuỳ từng trang, bài viết). Có nghĩa là một trang web 2MB chẳng hạn, có thể 1,4MB đã là hình ảnh rồi.

hình ảnh được tối ưu sẽ giúp tăng tốc wordpress lên nhiều lần
Như trang web được thống kê, hình ảnh chiếm đến 85%. Nội dung văn bản chẳng đáng bao nhiêu, chưa đến 2%. Chiếm thứ nhì là JavaScript, khoảng 7%. Đây là thống kế ngẫu nhiên một trang khá nặng hình ảnh, các trang khác tỉ lệ sẽ khác đi nhiều

Do vậy giảm dung lượng ảnh là giảm được rất nhiều lưu lượng, tương ứng là giảm thời gian hiển thị website.

Có hai cách giảm dung lượng ảnh:

  • Giảm không mất dữ liệu: Dung lượng ảnh giảm nhưng độ nét vẫn thế, thường tiết kiệm được tử 10 – 15%. Cái này lúc nào bạn cũng nên làm vì bạn chẳng mất gì về độ nét cả.
  • Giảm mất dữ liệu: Dung lượng giảm, độ nét cũng giảm theo. Ưu điểm là có thể giảm được rất lớn, đôi khi đến 50% dung lượng. Tuy nhiên cái này cần cân đối để không bị giảm chất lượng ảnh quá nhiều

Một cách đơn giản nhất để giảm dung lượng ảnh đó là chỉnh lại kích thước ảnh!

Thông thường kích thước web mà người dùng xem trên web giao động từ 600 – 800px, nên bạn chỉnh sửa ảnh lại chiều rộng như vậy sẽ đỡ đi nhiều. Chẳng hạn bạn có ảnh 1200px, bạn biết chiều rộng 600px là đủ thì hãy giảm kích cỡ này xuống, nó có thể giúp ảnh giảm dung lượng đi 3 đến 4 lần.

Một điều hay là nếu bạn lỡ up các ảnh lớn lên trang WordPress rồi thì vẫn có một số plugin cung cấp cho bạn khả năng thu gọn lại các ảnh đó về kích cỡ nhỏ hơn. Điều này hay là vì khi bạn có blog lớn thì tìm thủ công các ảnh rất khó.

Để tìm các phần mềm tối ưu ảnh trên desktop bạn có thể tra từ khoá Image Optimization Software. Còn để tìm các plugin cho WordPress hãy tra Image Optimization Plugin WordPress.

Một số plugin mình thấy khá ổn là:

  • WP Smush
  • EWWW Image Optimizer
  • Compress JPEG & PNG images
  • Imagify Image Optimizer

Bên dưới là ảnh chụp màn hình phần cài đặt của plugin Imagify:

Imagify - plugin tối ưu hoá hình ảnh

Google cách đây vài năm đã đề xuất định dạng ảnh mới WebP thay thế một số định dạng ảnh cũ như JPG và PNG. Ưu điểm của WebP là dung lượng lưu trữ giảm khoảng 20 – 30% mà chất lượng ảnh không thay đổi.

Tuy nhiên điều khiến WebP chưa phổ biến là hiện mới có 2 trình duyệt phổ biến hỗ trợ nó (Chrome & Opera), ngoài ra các công cụ tiện lợi cho người dùng không rành kỹ thuật vẫn chưa nhiều.

5. Sử dụng CDN

Không giống các giải pháp bên trên cách tăng tốc WordPress thường khá tốn kém.

CDN là viết tắt của từ Content Delivery Network – hay mạng phân phối nội dung.

Hiểu nôm na nó thế này. Có hai ô tô giống nhau, một cái xuất phất ở Hồ Chí Minh, một cái xuất phát ở Quảng Ninh, đường xá đều đẹp, xăng xe đầy đủ, giữa đường không bị công an giao thông giữ xe. Hỏi xe nào đến Hà Nội trước?

Câu trên không phải mẹo đâu. Xe ở Quảng Ninh sẽ đến trước, vì nó gần hơn đến gần 10 lần.

Điều tương tự cũng xảy ra với host. Bạn mua cái host ở Mỹ, ngay cả bạn mua host tốt (xe ô tô xịn), đã được tối ưu hoá ảnh và tính năng (hàng hoá không nặng lắm), nhưng quãng đường xa vậy thì cũng không thể chốc nhát là đến.

Thế thì cái CDN làm nhiệm vụ phân tán nội dung khắp thế giới, và nó sẽ lấy nội dung nào ở vị trí nào gần với người dùng nhất, qua đó giúp tăng tốc.

cloud-flare-co-hang-tram-pop-tren-toan-cau
CloudFlare có hàng trăm POP (trung tâm dữ liệu – Data Center) trên toàn thế giới và là một trong các dịch vụ CDN hàng đầu. Ở châu Á, các POP của họ có nhiều ở Trung Quốc, hiện tại chưa có POP nào ở Việt Nam. Châu Mỹ, Châu Phi họ cũng không có nhiều POP, đây là tình hình chung, số lượng thế này đã là khá hơn rất nhiều các dịch vụ khác rồi.

Ông nào ở Việt Nam vào web bạn thì ảnh không phải lấy ở host tận bên Hoa Kỳ mà là lấy ở Nhật, Singapore hay thậm chí ngay tại Việt Nam.

Câu hỏi, thế sao không thuê host luôn ở Việt Nam đi cho tiện, bày vẽ sang tận Hoa Kỳ, Âu, Úc thuê làm gì bây giờ lại phải khổ.

Lý do là thế này: Về nhiều mặt, trong đó có chất lượng kỹ thuật, dịch vụ, bảo mật, phương thức thanh toán…sản phẩm của Hoa Kỳ và nước ngoài nói chung tốt hơn Việt Nam khá nhiều. Buồn chứ vui gì đâu!

Ngoài ra với một số dịch vụ đặc biệt (ít thôi) mà khách hàng phân tán khắp thế giới thì yêu cầu dùng CDN là rất cần thiết. Chẳng hạn hầu hết các hãng tin hàng đầu thế giới mà người đọc rải khắp năm châu bốn bể thì họ đều sử dụng CDN.

Nhược điểm của CDN là gì:

  • Không nhiều dịch vụ CDN có POPs đặt tại Việt Nam.
  • Để dùng được CDN chất lượng, số tiền bỏ ra cũng không nhỏ với đa số người dùng, 10 – 20 đô / tháng là chuyện bình thường. Giá đó tương đương với host tầm trung rồi.
  • Các POPs ở Châu Á không được ổn định lắm. Chẳng hạn cách đây vài tháng mình có dùng MAXCDN – dịch vụ thuộc dạng máu mặt, tầm cỡ hàng đầu thế giới thế mà cũng bị downtime ba, bốn lần vì các POPs ở Singapore có vấn đề. Trong khi suốt thời gian đó cái host ở bên Hoa Kỳ thì không bị làm sao!

Các dịch vụ CDN có nhiều cách tính giá:

  • Dùng đến đâu trả đến đấy – theo dung lượng: cách này hay được áp dụng nhất, có thể là tính theo ngày, giờ luôn. Hoặc mua một gói lưu lượng độ 1TB chẳng hạn, dùng 1 tháng hay 1 năm hết cũng được, bao giờ dùng hết mới mua tiếp.
  • Trả theo tháng, dùng bao nhiêu dung lượng thì dùng: mình biết có mỗi CloudFlare áp dụng cách này. Gói tầm trung của nó tầm 20 đô / tháng. Dịch vụ miễn phí nghe bảo cũng khá tốt.

Nếu web thông tin có 500K – 1 triệu view / tháng có thể dùng host 20 đô + CloudFlare được đấy ạ.

Nếu có mức chi tiêu 100 đô / tháng mà khách truy cập chủ yếu ở Việt Nam thôi mình sẽ không dùng CDN, mà sẽ mua một con host thật xịn – vì bên trong đó thường sẽ được tối ưu rất nhiều thứ rồi mà CDN với mức giá đắt đỏ ấy chưa chắc bù được.

Vậy CDN hợp với ai?

  • Site nhỏ, hoặc tầm trung muốn tăng tốc và giảm tải host
  • Site lớn, lượng người truy cập phân tán khắp thế giới

Site lớn và lượng truy cập tập trung ở Việt Nam thì chi phí host sẽ cao có thể chọn một trong hai cách:

  • Sử dụng luôn host tại Việt Nam nếu được, với chi phí cao sẽ được ưu đãi, quan tâm chăm sóc nhiều hơn.
  • Mua host xịn nước ngoài mà không cần CDN (nếu site mình lớn mình sẽ chọn cách này).

Hiện nay có nhiều dịch vụ cao cấp cho host dùng WordPress, mình có thể kể với cái tên vì họ cũng nổi tiếng và ổn định thời gian dài rồi, thí dụ như LiquidWeb, Kinsta, WebSynthesis, MediaTempate,…Những thằng này cỡ từ 50 – 200 đô / tháng

Có một số thằng giá chát quá mình không nêu ra, toàn 300 – 400 đô / tháng thì ghê quá à!

Từ khoá bạn có thể tra là: wordpress premium hosting

Có dịch vụ CDN miễn phí nào không?

Để cung cấp dịch vụ CDN rất tốn kém, họ phải có máy chủ khắp thế giới nên nói thẳng ra rất khó tìm được hàng miễn phí. Nếu có miễn phí thường sẽ rơi vào tình cảnh giới hạn dung lượng rồi mồi nhử bạn mua gói cao hơn.

Thế thực sự không có gói miễn phí nào trọn đời dùng thoải mái à?

Thực ra là . Hiện tại mình biết có mỗi Automatic chính chủ WordPress cung cấp dịch vụ CDN miễn phí thông qua plugin Jetpack, trọn đời, không giới hạn. Tuy nhiên không ngon như bạn tưởng!

dịch vụ CDN miễn phí của Jetpack có khi không làm tăng tốc WordPress

Nhược điểm của dịch vụ CDN Jetpack là tốc độ không được cao như các dịch vụ CDN khác, tức là cái quan trọng nhất để mọi người muốn dùng CDN thì nó lại không đáp ứng được.

Ngay cả người dùng nước ngoài đôi khi cũng kể lại rằng bị Jetpack làm cho trang web của họ load đến 8 – 10s.

Thứ hai do đặc thù ở Việt Nam nên việc tải ảnh qua máy chủ của CDN Automatic WordPress đôi khi rất chậm thậm chí bị chặn luôn! (đặc biệt là trên điện thoại di động).

Hai lỗi đã chán rồi lại còn thêm vài vấn đề này nữa:

  • Ảnh CDN lưu trên photon của Jetpack bị giảm chất lượng, do vậy nếu ảnh nguồn chưa được tối ưu thì không sao, nếu nó được tối ưu tốt rồi thì việc giảm chất lượng này lại gây ra tác dụng ngoài mong muốn là chất lượng ảnh sẽ quá xấu.
  • Jetpack là một gói bao gồm quá nhiều chức năng.
  • Một số người nói rằng image CDN của Jetpack ảnh hưởng đến SEO của họ.

Đấy là lý do việc dùng CDN của Jetpack trông bối cảnh này hại lại nhiều hơn lợi, duy nhất có cái lợi nhỏ là bạn tốn ít băng thông hơn & bớt được các request tới máy chủ mà thôi. Vậy nếu không quá túng thiếu thì không nên dùng.

6. Sử dụng cache

Tuy rằng còn phụ thuộc vào công cụ bạn dùng, nhưng đa số các biện pháp tăng tốc WordPress ở đây đều có phương thức miễn phí.

Có rất nhiều điều để nói về phần này, và nó cũng bao gồm nhiều thông tin kỹ thuật (có những cái mình cũng không hiểu hết). Cache nghĩa là bộ nhớ đệm. Dưới đây là một số cách.

A. Cache phía trình duyệt

Bạn đã vào một trang web, các ảnh và JavaScript, CSS đã tải về. Một tháng sau bạn cũng vào trang đó, thì trình duyệt sẽ không cần tải các thông tin đấy nữa, vì nó đã lưu ảnh (chẳng hạn ảnh banner), JS và CSS ở bộ nhớ của nó ở máy tính, điện thoại rồi (mình nghĩ vui vui thế này: đây là dịch vụ CDN rẻ nhất và hiệu quả nhất! Bạn chẳng tốn xu nào và thiết bị của người dùng thì lại lưu sẵn thông tin trang của bạn rồi).

Cái này đơn giản vậy mà tăng tốc rất nhiều lần đấy ạ. Khách truy cập các lần tiếp theo giảm tải có khi từ 30% đến 70%. Tất nhiên cái này ít có tác dụng trong lần truy cập đầu tiên (ý là vẫn có tác dụng phần nào nếu bạn dùng các host JS hoặc jQuery, Font quốc tế chung).

Tuy nhiên cái này nếu bạn không điều chỉnh thì thời gian lưu của nó không dài, tức là tác dụng cache sẽ kém đi rất nhiều.

Để chủ động thời gian lưu dữ liệu phía máy khách bạn cần thêm các đoạn mã vào file .htaccess

File này có 2 cách truy cập, cách dễ nhất là thông qua plugin cho phép chỉnh sửa thông qua giao diện trực quan của WordPress, ở đây bạn có thể dùng luôn plugin mà đa số người dùng WordPress đều xài đó là Yoast SEO.

Bạn vào Yoast > Tools > File editor

Copy – Paste đoạn code này vào phần chỉnh sửa .htaccess (đoạn code này là cho máy chủ dùng Apache):

## EXPIRES CACHING ##
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg “access plus 1 year”
ExpiresByType image/jpeg “access plus 1 year”
ExpiresByType image/gif “access plus 1 year”
ExpiresByType image/png “access plus 1 year”
ExpiresByType text/css “access plus 1 month”
ExpiresByType application/pdf “access plus 1 month”
ExpiresByType text/x-javascript “access plus 1 month”
ExpiresByType application/x-shockwave-flash “access plus 1 month”
ExpiresByType image/x-icon “access plus 1 year”
ExpiresDefault “access plus 2 days”
</IfModule>
## EXPIRES CACHING ##

Sau đó nhấn nút Save…

Bạn cần hết sức cẩn thận copy chính xác, bởi vì cái file này chỉ cần làm nó bị lỗi một chút là trang web sẽ KHÔNG TRUY CẬP được, cho nên bạn cần biết cách thứ hai phòng khi làm lỗi cách thứ nhất, nhưng trước đó ta thử giải thích sơ qua đoạn code trên đã nhỉ, với đoạn trên bạn sẽ bảo trình duyệt của người dùng:

  • Lưu trữ ảnh trong vòng 1 năm
  • Lưu trữ text, css, pdf,x-icon trong vòng 1 tháng
  • Còn mặc định những định dạng khác là 2 ngày

Nếu cách thứ nhất làm lỗi (và bạn không truy cập được website nữa) thì bạn chỉ còn duy nhất một phương án đó là truy cập vào thư mục gốc trên hosting của trang web.

Bạn có thể sử dụng công cụ như FileZilla để chỉnh sửa các file trên hosting. Khi đăng nhập bạn sẽ thấy các file và folder tương tự như thế này:

FileZilla đăng nhập hosting

Nói chung bước này cần bạn chịu khó hơn một chút, yêu cầu phải nắm được cả thông tin tài khoản hosting.

B. Kỹ thuật tạo trang tĩnh

Đại khái trang mà bạn nhìn thấy được tạo thành từ các truy vấn từ cơ sở dữ liệu, mỗi lần bạn yêu cầu, nó sẽ phải tạo truy vấn để lấy ảnh, tiêu đề, nội dung, phần chân trang…

Nó giống như để nhìn thấy cả đại gia đình bạn phải gọi cả ông bà, bố mẹ, con cháu nội ngoại ở khắp nơi về họp mặt. Nếu bạn không cần nói chuyện với họ, cách hay hơn để nhìn thấy mà đỡ tốn công nhiều người là…chụp một bức ảnh cả đại gia đình, phóng to như thật, hiệu quả về mặt hình ảnh là tương tự.

Trên thị trường hiện nay, đặc biệt là WordPress có vài plugin rất tốt hỗ trợ, như WP Super Cache (thích hợp cho share host, miễn phí), W3 Total Cache (thích hợp cho VPS và người có kinh nghiệm, miễn phí và bản premium), WP Rocket (thích hợp cho dân không chuyên vì rất dễ dùng, giá 39 đô / năm).

Bản thân mình đang dùng WP Rocket cho trang này. Đa số các plugin vừa đề cập đều có khả năng điều chỉnh cache phía trình duyệt.

Các bạn lưu ý là các hosting tối ưu cho WordPress thường tích hợp sẵn các công cụ bộ nhớ đệm kiểu trang tĩnh ở phía máy chủ rồi nên bạn sẽ không cần phải cài thêm plugin nữa. Ví dụ như gói DreamPress của Dreamhost đã tích hợp đầy đủ cho mình. Tuy nhiên để cẩn thận bạn nên kiểm tra trước.

C. Kỹ thuật cache phía máy chủ

Kỹ thuật này đòi hỏi chuyên môn nếu bạn tự tay làm (một số VPS, ví dụ có lần mình mua bên LiquidWeb, họ không cài sẵn mà mình phải yêu cầu hoặc tự cài), ngược lại một số host khá xịn thì họ chủ động cài sẵn cho bạn rồi (thí dụ đã kể là DreamPress của Dreamhost).

Các host này làm thế còn để tối ưu cho chính nó (họ thường thu tiền với giá cố định theo tháng), bạn sẽ có trải nghiệm tốt hơn hẳn. Vài công nghệ có thể kể đến là Varnish, Memcached, PHP OPcache.

Một vài lưu ý về kỹ thuật cache

  • Bạn nên sử dụng nó bởi vì đây là một trong các cách hiệu quả nhất để cải thiện tốc độ trang.
  • Khi cập nhật nếu bạn quên xoá cache trang đó thì thông tin hiện ra ngoài không thay đổi. Để phòng điều đó, các plugin cache tĩnh để thời gian sống của cache thường từ 1 ngày đến 1 tuần là nhiều (bạn có thể chủ động điều chỉnh thông số này) hoặc là họ ngay lập tức xoá cache chỉ của URL vừa mới cập nhật (cách này là tốt nhất).
  • Các kỹ thuật cache phía máy chủ không dành cho người không chuyên, nếu không biết cài đặt thì hại nhiều hơn là lợi.

7. Sử dụng nén Gzip

Nén Gzip là cũng là kỹ thuật tăng tốc WordPress miễn phí, theo đó máy chủ hosting sẽ nén một số file của bạn như HTML, CSS, JS, rồi mới gửi đến trình duyệt. Sau khi tải xong file nén đã được giảm dung lượng, trình duyệt sẽ giải nén để hiển thị thông tin.

Dưới đây kết quả cho thấy Gzip hiệu quả thế nào với một số file thông dụng (JS & CSS):

Để kiểm tra trang web của bạn đã bật Gzip hay chưa, bạn có thể vào trang web: http://www.gidnetwork.com/tools/gzip-test.php

Kết quả thử với trang web của mình:

Nén Gzip cho trang này giúp tiết kiệm 70,8% dung lượng
Nén Gzip cho trang này giúp tiết kiệm 70,8% dung lượng

Đa số các hosting đều cho phép nén Gzip, thậm chí cài đặt sẵn tính năng này bởi vì nó giúp họ tiết kiệm băng thông đi nhiều.

Các plugin WordPress tạo cache trang tĩnh phần lớn đều tích hợp luôn tính năng bật Gzip (bên cạnh việc nó thường cũng hỗ trợ luôn điều chỉnh cache phía trình duyệt).

Nếu bạn không rơi vào các trường hợp kể trên có thể bật Gzip theo cách thủ công bằng cách chỉnh sửa file .htaccess.

Với máy chủ dùng Apache, thêm đoạn sau và file .htaccess:

<IfModule mod_deflate.c>
# Compress HTML, CSS, JavaScript, Text, XML and fonts
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE font/opentype
AddOutputFilterByType DEFLATE font/otf
AddOutputFilterByType DEFLATE font/ttf
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml

# Remove browser bugs (only needed for really old browsers)
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent
</IfModule>

Tìm hiểu thêm về Gzip ở đây.

8. Sử dụng các kỹ thuật tăng tốc của Google và Facebook

Đây là một trong những cách thức đơn giản nhất và hiệu quả nhất để tăng tốc WordPress.

Không có biện pháp nào bên trên sánh được về mức độ cải thiện tốc độ bằng cách này. Tuy nhiên cái gì cũng có cái giá của nó (không phải tiền) nên bạn cần cân nhắc cẩn thận.

Cả Facebook và Google đều cung cấp các biện pháp mới nhằm tăng tốc tải trang trên nền tảng di động. Nguyên nhân là vì tốc độ truy cập internet trên di động không có tốc độ cao cũng như độ ổn định như internet truy cập tại nhà.

Về cơ bản biện pháp chính của họ là:

  • Rút gọn code của trang web. Cả hai sẽ thu gọn trang web lại, họ hầu như chỉ giữ lại nội dung chính yếu của website và loại bỏ các thông tin khác, chẳng hạn như thông tin cột bên phải.
  • Lưu trang web trên máy chủ của Google và Facebook. Dĩ nhiên vì máy chủ của họ mạnh hơn hẳn đa số các dịch vụ hosting mà bạn dùng nên tốc độ sẽ được cải thiện đáng kể.

Cách này không nên dùng nếu bố cục và chức năng của trang web bị thay đổi ngoài sự mong muốn của bạn. Còn nếu trang đặt trọng tâm vào nội dung thì mình rất khuyến khích. Thí dụ như trang này (Đức Anh Plus) mình sử dụng công cụ tăng tốc của Google.

Goolge gọi chương tình của họ là AMP (Accelerated Mobile Pages). Với WordPress bạn có thể cài plugin AMP của chính chủ Automatic, tuy nó nhận được điểm reivew không cao bằng nhiều plugin khác tương tự nhưng được Google gợi ý làm đại diện nếu muốn dùng.

Khi người dùng tìm kiếm trên Google bằng điện thoại, nếu trang của bạn dùng AMP thì khả năng cao nó sẽ hiển thị kết quả ở định dạng này. Người dùng truy cập nhanh hơn đáng kể. Ông Jarrod Dicker người đứng đầu bộ phận sản phẩm & công nghệ của Washington Post nói rằng AMP làm tăng tỷ lệ click lên 50% vì người đọc biết rằng trang tải nhanh hơn, cụ thể ông chia sẻ thêm trang tải nhanh hơn 88% so với trang mobile truyền thống.

Sau khi vào trang AMP từ công cụ tìm kiếm, từ các click tiếp theo họ sẽ truy cập trang mobile thông thường.

Cũng có người khuyên rằng nên đợi AMP trở thành một trong các yếu tố xếp hạng và cần thời gian thử thách xem nó có được Google hỗ trợ dài lâu không?

Với Facebook họ gọi kỹ thuật của mình là Instant Articles, khi bạn đăng ký dùng sản phẩm tải trang nhanh của Facebook, mỗi khi bạn chia sẻ lên trang fanpage, Facebook sẽ chuyển nó sang định dạng của họ và làm trang tải nhanh hơn rất nhiều.

So sánh tốc độ thì FIA (Facebook Instant Articles) nhanh hơn Google AMP. Nhưng điều ấy không hàm ý là bạn chỉ nên dùng FIA vì đây là 2 nền tảng khác nhau, và thường là mình sẽ dùng cả hai nếu muốn đẩy tốc độ trang web lên tối đa.

So sánh tốc độ tải trang của AMP, FIA & trang web mobile thông thường
So sánh tốc độ tải trang của AMP, FIA & trang web mobile thông thường. Ảnh của Chartbeat

9. Cắt giảm các thiết kế không cần thiết trên di động

Nếu bạn để ý có rất nhiều phần thiết kế trên desktop có thể gần như vô ích trên di động. Vấn đề ở chỗ người dùng có khả năng cao không xem đến chúng.

Chẳng hạn với cột phải, ở màn hình lớn, thông tin cột sẽ hiện ra trước mắt người dùng khi họ đọc tin, nhưng ở điện thoại thì khác, họ có thể phải kéo xuống tận cùng mới thấy các thông tin cột phải (hoặc trái), và hành vi kéo xuống tận cùng đó rất ít khi được sử dụng.

Do vậy nếu thông tin đó quan trọng bạn nên xem xét đến việc chuyển nó gần hơn phía cuối bài viết. Còn nếu thông tin đó không quá quan trọng, và bạn nhận thấy khả năng nó được xem trên mobile là rất thấp hãy cân nhắc cắt giảm chúng trên di động.

Bản thân AMP cũng là việc cắt giảm rất nhiều yếu tố để giữ lại khung nền chính thôi. Ở đây là sự cắt giảm chủ động từ phía chúng ta dù bạn có cài AMP hay không.

Một số kỹ thuật khác

Đây có thể coi là các mẹo thì đúng hơn, vì nó khá là nhỏ và hơi tinh quái:

  • LazyLoad: Tải chậm, mẹo này rất hay nếu trang của bạn có nhiều ảnh, video. Nó sẽ chỉ tải nếu ảnh hoặc video của bạn hiện ra trong tầm nhìn của người đọc. Nghĩa là nếu bài viết có 5 ảnh, mỗi ảnh 100K. Thì mới đầu nó chỉ tải văn bản và các thứ khác thôi, chưa tải ảnh vội, đến lúc người xem cuộn tới phần có ảnh nó mới tải. Mình thấy khá nhiều trang tin tức lớn dùng cách này, vì họ có nhiều ảnh và hàng triệu người dùng, ví dụ như trang BBC. Cách này vừa tăng tốc, vừa giảm băng thông. Tuy nhiên có một số thông tin cho thấy cách làm này có thể ảnh hưởng tiêu cực đến SEO và đôi khi quá trình lại “Lazy quá mức” – ý mình là nhiều khi người dùng cuộn chuột qua rồi mà ảnh vẫn chưa hiện – cái này chắc chắn là lỗi nghiêm trọng, và bạn nên kiểm tra cẩn thận trước khi dùng. Dưới góc độ cá nhân mình thích Lazyload cho các ảnh ở phía gần cuối hơn vì thường khả năng nó được cuộn đến là thấp nhất. Mình cái ảnh trên đầu thì khỏi cần Lazy. Có vài plugin bạn có thể dùng cho nhiệm vụ này.
  • Rút gọn các file JavaScript, CSS bằng cách kết hợp nó lại thành một file, bỏ các phần thừa. Cách này mình không thích lắm vì có thể làm vỡ bố cục cũng như một số tính năng, thực tế mình chỉ dùng trên các site có giao diện đơn giản. Một lần nữa nếu bạn muốn dùng hãy kiểm tra trước nhé. Một trong các plugin mạnh nhất về tính năng này là Autoptimize, nó còn có khả năng rút gọn HTML.
  • Làm sạch Database, loại bỏ các dữ liệu dư thừa để quá lâu không còn cần thiết. Chẳng hạn những phiên bản cũ của bài viết, cái này có ích khi mà bạn sửa chữa không đúng thì bạn có thể phục hồi nhanh chóng lại bài viết, tuy nhiên theo thời gian nó sẽ đầy lên rất nhiều, và tất nhiên có nhiều phiên bản cũ bạn không bao giờ dùng đến. Mình chỉ có 375 bài viết nhưng có đến hơn 5000 phiên bản lưu trữ! Mấy hôm trước vừa xoá hết rồi. Lưu ý luôn backup tài liệu trước khi dọn Database, phòng khi nhỡ tay hoặc có sai sót còn có cái phục hồi. Plugin được đánh giá tốt về khả năng làm điều này là WP-Optimize
  • Hạn chế tối đa các liên kết ngoài không cần thiết. Chẳng hạn nếu cảm thấy không cần nút chia sẻ Twiter, Printest thì không nên gắn vào web. Những liên kết ngoài sẽ làm tăng thời gian tải trang.
  • Hạn chế các liên kết chuyển hướng. Mình từng phạm lỗi này khi chuyển từ không www sang có www, làm một số ảnh mình chưa chuyển bị lỗi chuyển hướng, ảnh thì vẫn hiện ra thôi nhưng nó mất công chuyển hướng. Tự dưng thì không phát hiện được lỗi này đâu vì về mặt hiển thị không có gì thay đổi. Bạn nên dùng công cụ tối ưu tốc độ tải trang để kiểm tra, ví dụ như của tools.pingdom. Bạn vào những công cụ thế này có thể phát hiện được nhiều thứ hay ho hơn nữa. Từ khoá tra: Website speed test

Giờ chúng ta xem lại cái tiêu đề chút. Nếu có kinh phí ổn, bạn dễ dàng làm được các điều sau:

  • Chọn được host tốt, Ram tốt, dung lượng tốt, cài cắm sẵn nhiều công cụ nền tảng giúp tăng tốc
  • Mua được plugin tăng tốc mà không phải ngại giá cả, có thể lên đến gần 100 đô với W3 Total Cache
  • Trong trường hợp bắt buộc phải dùng CDN cũng không thành vấn đề

Đúng, mạnh về tiền sẽ thuận lợi hơn, tuy nhiên ngay cả khi không có đồng nào trong tay bạn cũng dễ dàng tăng tốc được bằng các biện pháp như:

  • Xóa bỏ plugin dư thừa
  • Chọn theme đơn giản
  • Tối ưu hoá ảnh
  • Cache phía máy khách chỉ bằng một đoạn code
  • Plugin cache tĩnh miễn phí
  • Và một vài mẹo lặt vặt khác

Bạn chỉ cần làm hết sức trong khả năng của mình thôi.