【WordPress】警告の対処法:Action Scheduler: 1 past-due action found; something may be wrong. Read documentation »

wordpress-prograshi(プロぐらし)-kv WordPress
記事内に広告が含まれていることがあります。

WordPressdeで以下のような警告が表示されることがあります。ここでは、この原因と対処法をまとめています。

警告の内容

Action Scheduler: 1 past-due action found; something may be wrong. Read documentation »


警告の内容

「Action Scheduler: 1 past-due action found; something may be wrong」は、WordPress の内部で Action Scheduler(アクションスケジューラー) によってスケジュールされた「遅延処理タスク」が、実行予定時刻を過ぎても実行されていないことを意味しています。


Action Schedulerとは?

WordPress の一部プラグイン(特に WooCommerce, WP Mail SMTP, AutomateWoo, WPForms など)では、バックグラウンドで特定のタスク(例:メール送信、定期同期、キャッシュ削除など)を「スケジュール」して順次処理します。この機能を Action Scheduler と呼びます。



発生する原因

主な原因の一覧

過去のアクションが「実行されないまま残っている」主な原因は以下の通りです。

1.WP-Cronが無効化されている
wp-config.phpDISABLE_WP_CRONtrue になっている場合、WordPressのスケジューラーが動きません。


2.サイトが非公開/アクセスが少ない
WP-Cronは「訪問者がサイトを開いたとき」にのみ発火するため、トラフィックが少ないとスケジュール実行のチャンスがありません。


3.サーバー側のリソース不足
処理が重すぎてタイムアウトするケース。


4.プラグインの不具合
スケジュールされたアクションに問題があり、実行に失敗している。



Basic認証も原因になる

公開前のWEBサイトなどにBasic認証をかけている場合にもこのエラーが発生することがあります。

WordPressのスケジュール処理(WP-Cron や Action Scheduler)は、自分自身にHTTPリクエストを送って処理をトリガーする仕組みです。

しかし、サイトにBasic認証がかかっていると、自動リクエストを送っても認証エラー(401 Unauthorized)が返されて処理がブロックされてしまいます。

その結果、Action Scheduler が実行できずに「遅延状態」になったり、WP-Cronも失敗し、定期処理全体が止まる可能性があります。



エラー詳細の確認方法

プラグイン「WP Crontrol」をインストールすると、スケジュールされているアクションを確認・手動実行できます。


インストールと有効化が完了したら、「イベント」をクリックします。


エラーがある場合は上部に原因が表示されます。

(今回の場合、WEBサイト全体にBasic認証をかけたことが原因です)


なお、止まっているスケジュールを実行や停止(キャンセル)するだけなら、プラグインをインストールせずとも警告の「past-due action」のリンク先から実行可能です。



対策(Basic認証が原因の場合)

対策はいくつかあります。

Basic認証を解除する

Basic認証が原因の場合は、Basic認証を解除します。


wp-cron.php に認証をかけない

.htaccess や Basic認証の設定で、wp-cron.php や admin-ajax.php だけは 認証なしでアクセスできるようにします。

以下は .htaccess の例(Apacheの場合):

<Files "wp-cron.php">
  Satisfy Any
  Allow from all
</Files>


タイトルとURLをコピーしました