web-dev-qa-db-ja.com

WordPressのCronジョブを管理する方法

私は自分のサーバー上にスタンドアロンのWordPressサイトとWordPressマルチサイトネットワークサイトを持っている。すべてのサイトがあまりにも近くでcronジョブを実行しすぎている場合があります。各WordPress Webサイトでcronジョブがいつトリガーされるかをより適切に制御したいと考えています。

WordPressのcronジョブがどこからも起動されるのを無効にし、それを./wp-cron.phpに限定することは可能ですか?もしそうなら、どうですか?

指定した時間に各ドメインの./wp-cron.phpファイルをターゲットにするようにLinux経由でcronジョブを設定したいと思います。理論的には、これは私が経験してきたサーバーのボギングの大部分を軽減するはずです。

これは、私の各WordPressサイトのクーロンジョブをより適切に制御するための理想的なソリューションですか?

私がWordPress自身の中でやるべきことはありますか?それはcronジョブをよりよく制御することができます、それで私は同時に彼らのcronジョブを実行しているたくさんのサイトを得ないようにしますか?

サーバーリソースを節約しようとすると、cronジョブがここでの原因となります。

1
Michael Ecklund

WordPress Cron Jobを無効にするには、これをwp-config.phpに配置します。

define('DISABLE_WP_CRON', true);

たとえばcPanelを使用してLinuxでcronジョブをスケジュールするには...

これはあなたが実行するかもしれないコマンドです:

wget -q -O - http://www.your-domain.org/wp-cron.php?doing_wp_cron >/dev/null 2>&1

上記のコマンドの終わりは、単に出力を抑制します。

CPanelまたはSSHでcronジョブを設定する間隔、またはcronジョブを設定する間隔を選択して、上記のコマンドを使用してください。

上記のコマンドは、Linuxサーバにwgetを介してwp-cronを実行するように指示します。これにより、ページビューごとではなく、スケジュールに基づいてwp-cron.phpスクリプトが実行されます。これにより、サーバー上のプロセス数が少なくなります。

私はこの変更を加えた後すぐに私のサーバー負荷の違いに気づきました。

3
Michael Ecklund