これは一種の愚かな質問です...
1時間ごとに実行するアクションをスケジュールしました。
if(!wp_next_scheduled('my_hourly_events'))
wp_schedule_event(time(), 'hourly', 'my_hourly_events');
add_action('my_hourly_events', 'the_function_to_run');
function the_function_to_run(){
echo 'it works!';
}
これが1時間待たずに機能するかどうかをテストするにはどうすればよいですか?:)
wp_clear_scheduled_hook('my_hourly_events');
このコードの前に追加してから追加しようとしましwp_cron()
たが、実行中の関数が表示されません...
編集:
OK、trigger_error()
関数内にapacheエラーログをチェックアウトし、そこにあります:)
だから今、私はさらに混乱しています:
wp-cronはどのようにバックグラウンドで実行できますか?どうやら出力が表示されない場合にそれが起こるからです...
これはオブジェクトコンテキストでは機能しないようです。どうして?
「オブジェクトコンテキスト」とは、コールバックが次のようなものであることを意味します
—
ヤンファブリ
array( &$this, 'my_method_name' )
か?関数名はデータベースに保存されて後で実行されるため、実際には機能しません。&$this
クラス名ではなく特定のオブジェクトを参照します。このオブジェクトは、cronジョブが実行される次のリクエストでは存在しません。静的クラス関数が機能するはずです。
はい、関数を静的にする必要がありました。私はwpがローカルスクリプトを「cron」としてリモートで実行するとは思わなかった
—
onetrickpony
wp_remote_post()
。それはすべてを説明しています