Vô hiệu hóa WP-Cron (wp-cron.php) giúp website WordPress của bạn load nhanh hơn, chịu tải tốt hơn.
Các Cron Job được sử dụng để lên lịch hoạt động cho các tác vụ mang tính chất định kỳ trên website WordPress của bạn. Một số ví dụ về Cron Job có thể kể đến như: lên lịch xuất bản bài viết, kiểm tra các bản cập nhật, xóa cache website hoặc chạy plugin backup dữ liệu theo lịch đã được xác định trước… Trong WordPress, điều này được xử lý bởi WP-Cron, một tính năng mô phỏng Cron của hệ thống (nhưng không hoàn chỉnh). Tùy thuộc vào lượng lưu lượng truy cập vào website của bạn, việc sử dụng trình xử lý Cron tích hợp có thể ảnh hưởng ít hoặc nhiều đến tốc độ load web. Vì vậy, hôm nay tôi sẽ hướng dẫn cho các bạn cách vô hiệu hóa WP-Cron (wp-cron.php) và thay vào đó sử dụng Cron của hệ thống (host) để giúp website load nhanh hơn, chịu tải tốt hơn.
Tham khảo thêm:
- Tối ưu khả năng chịu tải cho WordPress với Heartbeat Control
- Vô hiệu hóa XML-RPC để bảo mật WordPress tốt hơn
Tại sao bạn nên vô hiệu hóa WP-Cron?
Không chỉ được khởi chạy vào những khoảng thời gian đã được quy định từ trước (bởi WordPress và các plugin), WP-Cron còn chạy mỗi lần bạn load web. Nghĩa là website có lượng khách truy cập càng nhiều thì tần suất hoạt động của WP-Cron càng cao. Nó tạo ra một lượng truy vấn HTTP(S) không hề nhỏ, gây ảnh hưởng nhiều tới cả tốc độ load lẫn khả năng chịu tải của website.
Đặc biệt là khi website của bạn cài nhiều plugin nặng (tạo nhiều Cron Job, chẳng hạn như WooCommerce) và có lưu lượng truy cập cao thì mức độ ảnh hưởng của WP-Cron là rất lớn. Giải pháp tối ưu nhất để giải quyết tình trạng này chính là vô hiệu hóa WP-Cron và thay thế nó bằng hệ thống Cron của host.
Vô hiệu hóa WP-Cron
Tất cả những gì bạn cần làm là thêm đoạn code sau đây vào file wp-config.php
của WordPress rồi lưu lại:
define('DISABLE_WP_CRON', true);
Lưu ý là nó phải nằm trên dòng ghi chú này:
/* That's all, stop editing! Happy blogging. */
Code bên trên có tác dụng ngăn không cho WP-Cron tự động chạy mỗi khi load web. Bạn vẫn hoàn toàn có thể gọi nó trực tiếp thông qua file wp-cron.php
.
Chạy Cron Job bằng host
Sau khi vô hiệu hóa WP-Cron, các bạn sẽ cần phải thiết lập Cron Job trên host để đảm bảo website WordPress vẫn hoạt động một cách bình thường.
Host cPanel
1. Truy cập cPanel của bạn, tìm mục Cron Jobs và click vào đó.
2. Trong giao diện Add New Cron Job, các bạn sẽ nhìn thấy một số mục như sau.
Trong đó:
- Common Settings: các bạn nên chọn mức Twice Per Hour (2 lần mỗi giờ) để tránh gây ảnh hưởng nhiều đến hiệu suất của host. Hệ thống sẽ tự điền giá trị vào các mục Minute, Hour, Day, Month và Weekday nằm bên dưới.
- Command: các bạn điền dòng lệnh như sau.
wget -q -O - https://domain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
Nhớ thay domain.com
bằng domain của bạn.
Click vào nút Add New Cron Job để hoàn tất.
3. Các Cron Job mà bạn đã tạo sẽ được hiển thị trong danh sách ngay bên dưới.
Host DirectAdmin
1. Truy cập DirectAdmin của bạn, tìm mục Cron Jobs và click vào đó.
2. Click tiếp vào mục Create Cron Job.
3. Trong giao diện Create Cron Job, các bạn sẽ nhìn thấy một số mục như sau.
Trong đó:
- Minute: điền
*/5
để chạy Cron Job mỗi 5 phút một lần. Để mặc định giá trị là*
trong các mục Hour, Day of Month, Month, Day of Week. - Command: các bạn điền dòng lệnh như sau.
wget -q -O - https://domain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
Nhớ thay domain.com
bằng domain của bạn.
Click vào nút Create để hoàn tất.
4. Các Cron Job mà bạn đã tạo sẽ được hiển thị trong danh sách như hình bên dưới.
Chạy Cron Job bằng dịch vụ của bên thứ ba
Ưu điểm của phương pháp này là sẽ:
- Áp dụng được trong mọi trường hợp, ngay cả khi host của bạn không hỗ trợ chạy Cron Job.
- Không tiêu tốn tài nguyên của server.
Tham khảo bài viết “Sử dụng EasyCron thay thế cho WP-Cron trong WordPress” để biết thêm chi tiết.
Thật đơn giản phải không nào? Chúc các bạn thành công!
Mọi thắc mắc liên quan đến việc vô hiệu hóa WP-Cron của WordPress xin vui lòng gửi vào khung bình luận bên dưới để được giải đáp.
Nếu bạn thích bài viết này, hãy theo dõi 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 nhé. Cảm ơn rất nhiều. :)
bài viết chất lượng, rất thích các bài viết về tối ưu, sửa lỗi cho website như này, giúp ích rất nhiều do dân không chuyên làm web như mình, chúc kênh ngày càng phát triển <3
Cảm ơn bạn. ❤️