[WordPress/Bitnami] wp-cron.phpをcronで定期的に叩く方法
予約記事などを投稿して時間通りに投稿されるのは、wp-cron.phpをアクセスしてきたユーザが叩いているため。
そのためアクセス数が少なかったり、Wordpressの前段にAWS Cloudfrontなどを置いていて、wp-cron.phpが叩かれない状態だと予約投稿しても時間通りに投稿されなかったりする
そこでwp-cron.phpをユーザに叩かせるのではなく、Linuxのcronで定期的にwp-cron.phpを叩くようにする
目次
wp-config.phpの無効化
wp-config.phpを編集してwp-cron.phpを無効化する
define('DISABLE_WP_CRON', true);
Cronの設定
crontab -e
を実行し、以下のコマンドを貼り付け。1分ごとは頻度が高いため、5分間隔で叩くようにしている
例はBitnamiの場合なので、wp-cron.phpを叩くユーザをdaemonにしている
*/5 * * * * sudo -u daemon /opt/bitnami/php/bin/php /home/bitnami/stack/apps/wordpress/htdocs/wp-cron.php