WordPressで予約した記事が予定時刻を過ぎても公開されず、「予約投稿の失敗」と表示される場合は、予約処理を実行するWP-Cronが予定どおり動かなかった可能性があります。まず記事の予約時刻とサイトの状態を確認し、コード変更は最後にします。
- 予約日時とタイムゾーンを確認する
- サイトへアクセスして再実行されるかを見る
- サイトヘルスでループバックやREST APIを確認する
- キャッシュ・セキュリティ・Cron関連設定を確認する
- 必要ならホスティング会社へCron設定を相談する
1.まず予約日時とタイムゾーンを確認する
WordPressの「設定 → 一般」にあるタイムゾーンと、記事に設定した予約日時が意図したものか確認します。時差や午前・午後の設定違いで、公開されていないように見えることがあります。
2.WP-Cronの仕組みを知っておく
WordPressのWP-Cronは、通常のシステムCronのように常時動くのではなく、ページ読み込み時に期限を迎えたタスクがないか確認します。WordPress公式のPlugin Handbookでも、アクセスがない時間帯では予定時刻より後のページ読み込み時にタスクが実行される可能性があると説明されています。
3.サイトヘルスの警告を確認する
ループバックリクエストやREST APIに問題がある場合、WordPressの一部の自動処理へ影響することがあります。「ツール → サイトヘルス」を確認し、重大な問題が出ている場合は内容を記録します。
サイトヘルスで重大な問題が出たときの確認ガイドも関連します。サイトヘルスにタイムアウト系の警告がある場合は、cURL error 28の確認手順も参照してください。
4.プラグインやセキュリティ設定を切り分ける
キャッシュ、セキュリティ、Cron制御、メンテナンス系プラグインを変更した直後から発生している場合は、その変更を確認します。複数のプラグインを一度に無効化せず、直前の変更から1つずつ切り分けます。
5.繰り返す場合はサーバー側も確認する
予約投稿失敗が頻繁に起きる場合、ホスティング側でWP-Cronが無効化されていないか、サーバーCronを利用しているかなどを確認します。設定方法はサーバーごとに異なるため、公式マニュアルやサポートに従ってください。
症状別の見方
| 症状 | 確認ポイント |
|---|---|
| たまに数分遅れる | アクセス状況、WP-Cronの実行タイミング |
| 毎回失敗する | WP-Cron設定、ループバック、プラグイン |
| 予約時刻がずれる | WordPressのタイムゾーン設定 |
| 更新後から発生 | 直前に更新したプラグイン・テーマ |
予約投稿を安定させる確認表
| 確認項目 | 見るポイント |
|---|---|
| タイムゾーン | サイト設定と予約日時が一致しているか |
| WP-Cron | 無効化や重複設定がないか |
| ループバック | サイトヘルスで失敗していないか |
| 実行タイミング | アクセスが少ない時間帯に偏っていないか |
| サーバーCron | 利用中ならWP-Cronとの役割が重複していないか |
予約投稿を業務で使う場合は、公開予定時刻だけでなく「実際に公開された時刻」も数回記録すると、恒常的な遅延か単発の失敗かを判断しやすくなります。
直ったか確認する再テスト手順
- 失敗時刻と表示内容を残す:エラー表示、予約時刻、直前に変更した設定をメモします。
- 原因候補を1つだけ直す:タイムゾーン、ループバック、Cron設定などを同時に複数変更しません。
- テスト用の記事を短時間後に予約する:本番記事ではなく、公開しても問題のない確認用記事で試します。
- 予定時刻後に公開状態を確認する:ログアウト状態のブラウザでも記事が公開されているかを確認します。
- 結果を記録する:自動公開できたか、何分程度ずれたか、同じ失敗が再現したかを残します。
失敗した記事を手動公開できても、予約投稿の仕組み自体が直ったとは限りません。次の予約が自動公開されるところまで確認すると、再発防止まで含めて判断できます。
やらない方がよいこと
「予約投稿の失敗」だけを理由に、wp-config.phpへ未確認のコードを追加したり、Cronを重複して設定したりするのは避けます。まず現在の設定とエラー状況を確認してください。
サポートへ相談する目安
予約日時・タイムゾーン・サイトヘルスの確認までは自分で進めやすい範囲です。毎回予約投稿に失敗する、WP-Cronが無効化されている可能性がある、ループバックや外部通信のエラーが続く場合は、Cron設定を自己流で追加せずホスティング会社へ相談してください。
よくある質問
アクセスが少ないサイトでは予約投稿できませんか?
できないわけではありませんが、WP-Cronはページ読み込みをきっかけに実行される仕組みのため、予定時刻ぴったりに動かない場合があります。必要に応じてホスティング側のCron利用を検討します。
予約投稿に失敗した記事は手動公開してよいですか?
内容や公開日時に問題がなければ手動公開は可能です。ただし、繰り返す場合は根本原因も確認してください。

