Hồi đầu năm, tôi nhận được một cuộc gọi từ bạn học cũ: “Web của tao chạy chậm như rùa bò, khách vào toàn bỏ đi. Tao mở Google PageSpeed Insights ra thì điểm chỉ có 38.” Tôi vào xem thử. Một website WordPress bán hàng với khoảng 30 plugin, hình ảnh chưa tối ưu, không có caching, database nặng gần 200MB vì lịch sử revision từ 3 năm trước. Nghe quen không? Chắc hẳn nhiều bạn cũng từng rơi vào hoàn cảnh tương tự.
Sau khi tối ưu hàng trăm website WordPress trong nhiều năm, tôi nhận ra một sự thật: phần lớn vấn đề tốc độ đều đến từ ba nguyên nhân chính: server, caching và hình ảnh. Bài này tôi sẽ hướng dẫn bạn từng bước từ A đến Z, đi từ server lên đến trình duyệt, để bạn tự tối ưu site WordPress của mình đạt Core Web Vitals.
Core Web Vitals là gì và tại sao quan trọng trong 2026?
Core Web Vitals là bộ chỉ số của Google đo lường trải nghiệm người dùng thực tế trên website của bạn. Năm 2026, đây không chỉ là yếu tố xếp hạng SEO mà còn là tiêu chuẩn sống còn. Ba chỉ số chính:
- LCP (Largest Contentful Paint): Thời gian tải nội dung chính – lý tưởng dưới 2.5 giây
- FID/INP (Interaction to Next Paint): Độ trễ tương tác – mục tiêu dưới 200ms
- CLS (Cumulative Layout Shift): Độ ổn định bố cục – điểm số dưới 0.1
Theo khảo sát năm 2026, cứ mỗi giây tải trang chậm hơn, tỷ lệ thoát trang tăng 32% và tỷ lệ chuyển đổi giảm 7%. Bạn có để ý rằng khi vào một website mất hơn 3 giây để hiển thị nội dung, bạn thường tắt đi và sang trang khác không? Khách hàng của bạn cũng vậy.
Bước 1: Kiểm tra server và hosting
Server là nền móng. Một căn nhà dù có nội thất đẹp đến đâu, nếu móng yếu thì cũng không thể vững được. Trước khi làm bất cứ điều gì, hãy kiểm tra:
- PHP version: PHP 8.2+ cho tốc độ nhanh hơn PHP 7.x khoảng 30%
- Server response time (TTFB): Lý tưởng dưới 300ms
- Memory limit: Tối thiểu 256MB, khuyên dùng 512MB
Nếu server bạn đang dùng có TTFB trên 500ms, hãy cân nhắc nâng cấp hoặc chuyển hosting. RabbitLoader (đang chạy trên site này) và các CDN có thể cải thiện TTFB đáng kể.
Bước 2: Caching – “chiếc áo giáp” cho tốc độ website
Caching giống như việc bạn chụp ảnh món ăn và treo lên thay vì phải nấu lại mỗi lần khách gọi món. Thay vì WordPress phải xử lý PHP và truy vấn database mỗi khi có người truy cập, caching lưu sẵn bản tĩnh của trang và phục vụ gần như tức thì.
Các loại caching cần bật
- Page Cache: Lưu bản HTML tĩnh của toàn bộ trang
- Browser Cache: Cho trình duyệt khách lưu CSS, JS, hình ảnh
- Object Cache: Lưu truy vấn database để giảm tải cho MySQL
- CDN Cache: Phân phối nội dung qua các server gần người dùng nhất
Site này đang dùng RabbitLoader cho caching và CDN. Bạn có thể dùng các plugin như WP Rocket, W3 Total Cache hoặc Litespeed Cache. Cá nhân tôi thích giải pháp caching ở cấp độ server hơn vì nó nhanh hơn plugin-level caching.
Bước 3: Tối ưu hình ảnh – “thủ phạm” số 1 làm chậm website
Bạn có biết trung bình hình ảnh chiếm 60-70% tổng dung lượng tải trang của một website WordPress không? Nhiều bạn chụp ảnh từ máy ảnh 24MP rồi upload lên WordPress mà không resize, dung lượng mỗi ảnh lên tới 5-10MB.
Giải pháp:
- ShortPixel Image Optimizer (có sẵn trên site này) tự động nén hình ảnh khi bạn upload
- Chuyển sang định dạng WebP hoặc AVIF để dung lượng nhỏ hơn 30-50% so với JPEG
- Resize ảnh trước khi upload: bài viết không cần ảnh rộng hơn 1920px
- Dùng lazy loading: chỉ tải hình ảnh khi người dùng kéo đến gần
Tôi có nguyên tắc: ảnh trong bài viết không bao giờ quá 200KB. Nếu ảnh nào to hơn, tôi resize và nén trước khi upload. Mẹo nhỏ: media library của WordPress dùng ShortPixel ở đây xử lý tự động, bạn chỉ cần bật lên và để nó chạy.
Bước 4: Tối ưu CSS, JavaScript và font chữ
CSS và JavaScript không được tối ưu có thể chặn hiển thị nội dung, làm LCP tăng vọt. Có hai kỹ thuật quan trọng:
- Minify: Xóa khoảng trắng, comment, xuống dòng trong file CSS/JS
- Defer/Async: Trì hoãn tải JavaScript không quan trọng
- Inline critical CSS: Đưa CSS cần thiết cho phần trên cùng của trang vào thẳng HTML
Font chữ cũng là một vấn đề. Mỗi font Google Fonts có thể thêm 100-300KB vào dung lượng tải trang, và nếu không tối ưu, nó gây ra CLS khi font chưa kịp tải mà nội dung đã hiển thị. Giải pháp: dùng font-display: swap và self-host font nếu có thể.
Bước 5: Dọn dẹp database WordPress
WordPress lưu lại tất cả lịch sử chỉnh sửa bài viết (post revisions), thảo luận spam, và nhiều dữ liệu tạm thời khác. Một database 200MB sau khi dọn dẹp có thể chỉ còn 30-40MB. Database nhẹ hơn = truy vấn nhanh hơn = website nhanh hơn.
Tôi thường dọn dẹp database mỗi tháng một lần, xóa:
- Post revisions cũ (chỉ giữ 5-10 bản gần nhất)
- Spam comments
- Transient options hết hạn
- Dữ liệu trong thùng rác
Plugin Media Cleaner (Pro) trên site này cũng giúp dọn ảnh và file media không dùng đến – một việc mà nhiều người quên làm.
Bước 6: Kiểm tra plugin đội nặng cho website
Plugin càng nhiều, site càng nặng. Mỗi plugin thêm CSS, JavaScript và truy vấn database riêng. Có plugin chỉ thêm một chức năng nhỏ xíu nhưng lại kéo theo cả jQuery và font chữ. Tôi có một “luật bất thành văn”: nếu plugin nào không thực sự cần thiết, hãy xóa nó đi (không chỉ deactivate, mà là xóa hẳn).
Công cụ Query Monitor là bạn thân của người tối ưu WordPress. Nó cho bạn thấy plugin nào thực hiện nhiều truy vấn nhất, PHP memory nào đang bị ngốn, và hook nào chậm nhất. Bạn sẽ ngạc nhiên khi thấy có những plugin nhỏ xíu nhưng lại là nguyên nhân chính làm chậm site.
Đo lường và theo dõi: đừng đoán mò
Cuối cùng, hãy đo lường mọi thay đổi. Google PageSpeed Insights, GTmetrix và WebPageTest là những công cụ miễn phí. Site này có AnalyticsWP và Site Kit của Google – hãy dùng chúng để theo dõi Core Web Vitals theo thời gian thực.
Không ai có thể tối ưu một website mà không đo lường. “Nếu bạn không thể đo lường nó, bạn không thể cải thiện nó” – Peter Drucker đã nói thế, và điều này đúng đến từng chữ với tốc độ website.
Kết luận
Tối ưu tốc độ WordPress không phải là chuyện một lần rồi thôi. Đó là một quá trình liên tục: kiểm tra, tối ưu, đo lường, lặp lại. Bắt đầu từ server, đến caching, hình ảnh, code, database, và cuối cùng là plugin. Mỗi bước một ít, nhưng tổng hợp lại sẽ cho bạn một website nhanh như chớp.
Hiện tại website của bạn đạt Core Web Vitals chưa? Hãy thử kiểm tra với Google PageSpeed Insights và chia sẻ kết quả dưới phần bình luận nhé!


