【WordPress】定期実行処理(Cronジョブ)の設定方法

Web Development

こんにちは、Yaponkaです。

日々Web制作をしていく中で学んだことの忘備録です。

この記事では、WordPressに設定されている定期実行の処理(Cronジョブ)にオリジナルの処理を加えたい時に行う方法を紹介します。

スポンサーリンク

WordPressの定期実行の処理(Cronジョブ)とは?

WordPressに設定されている定期的に実行される処理のことをCronジョブといいます。

具体的な使用例は定期的に設定しているサイトのバックアップの実行や、予約投稿を設定した記事の投稿など様々な用途で使用されています。

今回は、オリジナルのCronジョブ設定方法を次の3ステップで行っていきます。

ステップ1: WP Crontrolプラグインをインストール

このプラグインはインストールしたサイトに設定されているCronジョブを確認することや、オリジナルのCronジョブの設定ができます。
https://ja.wordpress.org/plugins/wp-crontrol/

ステップ2:オリジナルのCronイベントの設定を行う

①アドミン画面のツールからCronイベントをクリックし、Cronイベントのタブの「新規追加」から新しくCronイベントを追加します。

 

②イベントの種類では「Standard cron event」を選択し、フック名、実行時間、実行の頻度をそれぞれ入力します。※ここで設定したCronイベントのフック名をテーマのFunctions.phpファイルで使用します。(今回はsend_mail_testとしました。)

 

③「イベントの追加」ボタンをクリックして、Cronイベント内に設定したイベントが追加されていることを確認します。

ステップ3: テーマのfunctions.phpファイルに処理コードを記述する

ステップ2で作成したフックを使用して実行したい処理のコードをテーマのfunctions.phpファイルに書いていきます。
今回はCronジョブを使ってメールを送信する処理の設定をしていきます。

add_action('send_mail_test', 'send_mail_test_cron');
function send_mail_test_cron() {
 wp_mail('your-mail-address@mail.com', 'Test mail', 'Test mail from WordPress cron job');
}

※「your-mail-address@mail.com」の部分はご自身のメールアドレスに変更してください

WordPress標準のCronジョブの注意点

最後に、標準のWordPress定期実行の処理方法はサイトへのアクセスがないと実行されない為、アクセスが少ないサイトでは設定した時間通りに処理が行われないこともあるので注意してください。

Cron | Plugin Developer Handbook | WordPress Developer Resources
What is WP-Cron WP-Cron is how WordPress handles scheduling time-based tasks in WordPress. Several WordPress core features, such as checking…

最後までお読みいただきありがとうございました。