定期的に実行したい処理の追加・管理ができるWordPressプラグイン「WP Crontrol」

定期的に実行したい処理の追加・管理ができるWordPressプラグイン「WP Crontrol」

定期的に実行したい処理の追加・管理ができるWordPressプラグイン「WP Crontrol」

WordPressには、予約投稿やサイトヘルスのチェック、バックアップなど、スケジュールされた処理を実行するためのWP-Cronという機能が実装されています。WP-CronはサーバーOSのcronとは若干異なり、スケジュールされた時間を超えてからサイトにアクセスがあった時点で実行されます。

WP Crontrolは、WP-Cronで実行される処理や頻度などを管理することができるWordPressプラグインです。

WP Crontrolのインストール

インストール手順は以下の通りです。

ファイルをFTPでアップロードしてインストール

  1. WP Crontrolをダウンロードします。
  2. ダウンロードしたファイルを展開し wp-content/plugins にアップロードします。
  3. 管理画面の[プラグイン]ページで、WP Crontrolを有効化します。

WordPress管理画面でインストール

  1. [プラグイン] – [新規追加]にアクセスします。
  2. 「WP Crontrol」で検索します。
  3. [今すぐインストール]をクリックして、WP Crontrolをインストールします。
  4. [有効化]をクリックしてプラグインを有効化します。

WP Crontrolの使い方

Cronスケジュール

WordPress管理画面で[設定] – [Cronスケジュール]にアクセスすると、実行頻度を追加できます。デフォルトでは、以下の頻度が登録されています。

  • hourly(1時間に1回/3600秒)
  • twicedaily(1日2回/43200秒)
  • daily(1日1回/86400秒)
  • weekly(週1回/604800秒)

処理の実行間隔を変えたい場合は、スケジュールを追加しましょう。「内部名」「間隔 (秒)」「表示名」を入力して追加します。

cronスケジュールの追加

Cronイベント

[ツール] – [Cronイベント]にアクセスすると、スケジュールされている処理の一覧を確認できます。WordPress標準で追加されている処理やプラグインによって追加された処理が表示されていますね。[編集]をクリックすると編集画面が開き、スケジュールされた処理の内容を変更することもできます。

定期実行される処理の一覧

また[新規追加]からは、新たに定期実行する処理を追加することができます。イベント種別で「Standard cron event」を選択した場合は、「フック名」「引数 (オプション)」「次の実行」「頻度」を設定します。

イベント種別で「PHP cron event」を選択した場合は、フック名の代わりにPHPコードを直接登録できます。

PHPコードのCronへの登録

WP-Cronを無効化する方法

余談にはなりますが、WP-Cronは無効化することも可能です。無効化する場合は、wp-config.phpに以下を追加します。

define('DISABLE_WP_CRON', 'true');

WP-Cronはサイトへのアクセスをトリガーとしているため、サイトへのアクセスがある度にスケジュールされた処理がないかチェックが走ります。そのため、WP-Cronを無効化することでスケジュールチェックの処理もなくなり、サイトのパフォーマンス改善が見込めます。

ただし、WP-Cronを無効化すると、予約投稿やバックアップなどの定期処理が実行されなくなるので注意が必要です。WP-Cronは無効化するけど定期実行は機能させたい場合は、WordPressインストールディレクトリ直下にあるwp-cron.phpをサーバーのcronに登録することで解決できます。

あとがき

中級者~上級者向けのプラグインではありますが、定期実行したい処理を管理する時は便利ですね。

この記事が気に入ったら
いいね!してね♪

Twitter で

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です