您是否遇到無法在 WordPress 中運行的計劃操作的問題?
WordPress 有一個名為 wp-cron 的計劃系統(tǒng),但它有時會錯過計劃任務,例如發(fā)布計劃的帖子、發(fā)送觸發(fā)的電子郵件等。由服務器操作系統(tǒng)運行的正確 cron 作業(yè)通常更可靠。
在本文中,我們將向您展示如何在 WordPress 中禁用 wp-cron,并介紹兩種設置正確定時作業(yè)的方法。

為什么禁用 wp-cron?
您的WordPress 網(wǎng)站有一個名為 wp-cron 的內置調度系統(tǒng)。它執(zhí)行時間敏感的任務,例如檢查更新、發(fā)布預定的帖子、自動創(chuàng)建定期備份、發(fā)送觸發(fā)的電子郵件等。
您可以在我們的指南中了解有關如何查看和控制 WordPress cron 作業(yè)的更多信息。

問題是只有在有人訪問您的網(wǎng)站時才會提示 WordPress 檢查預定的作業(yè)。這對于大多數(shù)網(wǎng)站來說都足夠好,但有時它可能會給較小的網(wǎng)站帶來問題。
例如,如果您的網(wǎng)站流量較低,那么您預定的帖子可能不會按時發(fā)布。如果你的網(wǎng)站流量很大,那么 wp-cron 會經常被檢查,這可能會影響你網(wǎng)站的性能。
現(xiàn)在,如果您只想修復丟失的預定帖子錯誤,那么您可以使用免費插件Missed Scheduled Publisher,但如果您想解決所有預定操作問題,那么您需要一個真正的 cron 作業(yè)。
真正的定時作業(yè)由您的網(wǎng)絡托管服務器的操作系統(tǒng)運行,而不是由 WordPress。您可以將其設置為更可靠地檢查計劃任務。默認情況下,WordPress 無權在服務器級別進行設置,但您可以按照我們的教程輕松完成。
讓我們看看如何禁用 wp-cron 并設置正確的 cron 作業(yè)。
在 WordPress 中禁用 wp-cron
要禁用 wp-cron,您需要編輯wp-config.php,這是一個核心 WordPress 配置文件。它位于您的 WordPress 站點的根文件夾中,您需要使用 FTP 客戶端或網(wǎng)絡托管控制面板中的文件管理器。
該文件包含大量敏感信息,做出錯誤的更改可能會破壞您的 WordPress 網(wǎng)站。我們建議先備份文件,以防萬一。您可以按照我們的指南了解如何在 WordPress 中編輯 wp-config.php。
您需要將以下代碼粘貼到 wp-config.php 文件中,就在“就是這樣,停止編輯!快樂的博客 /* That’s all, stop editing! Happy publishing. */“的上方。
define('DISABLE_WP_CRON', true);

之后,您需要保存文件并將其上傳回您的網(wǎng)站。
當有人訪問您的網(wǎng)站時,WordPress 將不再觸發(fā) wp-cron。
在您的 WordPress 主機上設置正確的 Cron 作業(yè)
現(xiàn)在您需要設置一個適當?shù)?cron 作業(yè)來運行您的計劃任務。您執(zhí)行此操作的方式將根據(jù)您的WordPress 托管服務提供商提供的工具而有所不同。
在寶塔面板添加定時作業(yè)計劃
請查看文章《在寶塔面板添加 WordPress 定時作業(yè)計劃任務》
在cPanel面板添加定時作業(yè)計劃
cPanel是一個流行的網(wǎng)站控制面板,包含在許多網(wǎng)絡托管計劃中,包括Bluehost。我們將在本教程中使用Bluehost cPanel。
注意:有些網(wǎng)絡主機不使用 cPanel,有些甚至可能不允許您創(chuàng)建 cron 作業(yè)。如有疑問,您應該聯(lián)系您的托管服務提供商或查閱他們的支持文檔。
登錄主機帳戶并導航到 cPanel 后,您應該向下滾動直到找到“Cron Jobs”,然后單擊它。
您可以在“高級”部分找到它,但這可能因您的托管服務提供商而異。

這將帶您進入一個新頁面,您可以在其中創(chuàng)建新的 cron 作業(yè)。
不要擔心您會看到關于需要很好地了解 Linux 命令的警告。只需要一個命令,我們將在下面向您展示它的確切含義。

如果需要,您可以更改將發(fā)送cron 作業(yè)通知的電子郵件地址。默認地址是您在注冊虛擬主機時使用的地址,這在大多數(shù)網(wǎng)站上都可以正常工作。
現(xiàn)在,讓我們向下滾動到“添加新的 Cron 作業(yè)”部分并設置一個 cron 作業(yè)。
首先,您需要確定 cron 作業(yè)的運行頻率。這可以是您喜歡的任何內容,但我們建議間隔 30 分鐘。
您需要單擊“通用設置”按鈕并從下拉列表中選擇時間間隔。如果您不確定,對于大多數(shù)網(wǎng)站來說,“每小時兩次”是一個不錯的選擇。

現(xiàn)在您可以輸入要求 WordPress 運行其計劃任務的命令。您需要將以下代碼粘貼到“命令”字段中:
wget -q -O - https://example.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
請確保將“example.com”替換為您自己網(wǎng)站的 URL。
完成此操作后,請確保單擊“添加新的 Cron 作業(yè)”按鈕,您將看到新的 cron 作業(yè)已添加到下面的列表中。

WordPress 現(xiàn)在將每 30 分鐘檢查一次并運行計劃任務,而不是在有人訪問您的網(wǎng)站時。
總結
WordPress 的定時作業(yè)都是通過訪問者觸發(fā)的,網(wǎng)站訪問量決定了執(zhí)行的頻次,流量大的觸發(fā)頻次大,服務器消耗多,訪問量過低,觸發(fā)頻次就低,導致有些計劃無法按期執(zhí)行。
通過在服務器端設置定時計劃,就很好的解決了上面的問題。
拓展閱讀:
- 如何查看和管理WordPress 定時任務
- 詳細介紹 WordPress 配置文件 wp-config.php
- 15個常用的WordPress wp-config.php 配置代碼
- 你可能不知道的幾個 wp-config.php 常量設置
- WordPress定時發(fā)布文章/解決定時發(fā)布失效
- 寶塔面板下運維WordPress網(wǎng)站





我設置的是每分鐘之行一次,感覺頻率有點高了
不用設置那么高,一般30分鐘一次就可以了