予定時刻に動かない理由
アクセスが少ない、ループバックが制限される、DISABLE_WP_CRON設定、長時間処理、製品のエラーなどが考えられます。CDNやBasic認証、WAFも構成によって影響するため、サイトヘルスとサーバーログを照合します。
調査を進める順序
- 失敗した機能、イベント名、予定時刻を記録する。
- WordPressとサーバーの時刻・タイムゾーンを確認する。
- イベントの登録と実行状況、PHPエラーを調べる。
- WP-CLIが使える場合は
wp cron testなどで起動経路を確認する。 - 実行後に業務データと次回予定を確認する。
イベントを手動実行するとき
メール、請求、同期などを再実行すると重複処理になる場合があります。用途と再実行の安全性を確認し、全イベントの一括実行を避けます。テスト成功は個々のイベントの正常終了を保証しません。
OSの定期実行へ切り替える場合
既存の起動経路と二重実行にならないよう設計し、実行ユーザー、PHP版、パス、ログ、失敗通知を確認します。設定後は定刻の実行結果まで確認して完了にします。
定期処理を一覧にする
イベント名、担当製品、予定時刻、実行周期、業務への影響、再実行の安全性を記録します。用途不明のイベントは、登録元とコードを確認します。不要に見えても製品が必要とする処理かもしれないため、推測で削除しないでください。
二重実行と重い処理を調べる
OSの定期実行とアクセス起動を併用している、処理が長く終わらない、複数の製品が同じ同期をする場合などを調べます。メールや注文を扱う処理は、再実行しても重複しない設計かを確認します。
よくある質問
アクセスを増やせば直りますか?
アクセス不足による遅延ならきっかけになりますが、ループバック拒否やPHPエラーは別です。起動と各イベントの実行結果を分けて確認します。
全イベントを手動実行してよいですか?
業務副作用がある場合があります。対象を限定し、実行内容・承認・復元方法を確認してから行います。