Không có nhược điểm nào khi chạy WP CRON bằng các công việc định kỳ của máy chủ. Trong thực tế đây là thực hành được đề nghị.
Theo Tài liệu phát triển Plugin WordPress chính thức :
WP-Cron không chạy liên tục, đây có thể là một vấn đề nếu có các nhiệm vụ quan trọng phải chạy đúng giờ. Có một giải pháp dễ dàng cho việc này. Chỉ cần thiết lập lịch trình tác vụ của hệ thống để chạy theo các khoảng thời gian bạn mong muốn (hoặc tại thời điểm cụ thể cần thiết).
Để thực hiện việc này, trước tiên bạn cần tắt hành vi cron mặc định trong wp-config.php
:
define('DISABLE_WP_CRON', true);
Sau đó, lên lịch wp-cron.php
từ máy chủ của bạn. Đối với Linux, điều đó có nghĩa là:
crontab -e
Tuy nhiên, thay vì chạy nó trong Dòng lệnh (CLI), hãy chạy nó dưới dạng yêu cầu HTTP. Cho rằng bạn có thể sử dụng wget
:
*/5 * * * * wget -q -O - https://your-domain.com/wp-cron.php?doing_wp_cron
WordPress tải tất cả các tệp lõi cần thiết, Plugin, v.v. wp-cron.php
với MÃ sau:
if ( !defined('ABSPATH') ) {
/** Set up WordPress environment */
require_once( dirname( __FILE__ ) . '/wp-load.php' );
}
Vì vậy, đừng lo lắng về việc WordPress không tải các tính năng quan trọng.
wget http://YOUR_SITE_URL/wp-cron.php
mà không cần thêm?doing_wp_cron
Vì vậy, cái này tốt hơn cái kia? Việc bổ sung?doing_wp_cron
làm gì mà phiên bản không có?