2016-11-28 3 views
2
function cronstarter_activation() { 
    if(!wp_next_scheduled('mycronjob')) { 
    wp_schedule_event(strtotime('00:02:00'), 'daily', 'mycronjob'); 
    } 
} 
add_action('wp', 'cronstarter_activation'); 

function my_repeat_function() { 
    //My code the same information to database 
} 
add_action ('mycronjob', 'my_repeat_function'); 

すべてがうまくいきます。 私の問題は、cron_jobから保存されたデータベースから保存された情報を受信するサイドバーにphpコードがあることです。 と、受信者が00:02:00の後に新しい日にサイトを訪れるのは初めてです。前日の情報。Wordpressのスケジュールは、最初の訪問後にのみ毎日実行されますか?

1日目の最初の訪問者は、前日の情報であるサイドバーの結果を参照してください、そしてcronjobをアクティブにした後だと思います。

本当ですか?どのように私は最初の訪問者を必要とせずにcronjobを実行することができますか?

+0

'wp_cron()'は、あなたのサイトに誰かがアクセスしたときにのみ動作します。それは何とか「トリガー」されなければなりません。ユーザーの訪問時に独立して実行される自動cronを使用する場合は、サーバーからpure PHPを使用してcronジョブを設定する必要があります。 [この回答](http://stackoverflow.com/questions/18737407/how-to-create-cron-job-using-php)と[this](https://developer.wordpress.org/plugins/cron)を確認してください。システム・タスクスケジューラ/に引っ掛ける)。 –

答えて

0

はいWP Cronは、誰かが実行するためにサイトを訪問する必要があるという点で大きな注意点があります。たとえば、午前2時にジョブが実行されるようにスケジューリングしたが、午前2時に誰もアクセスしない場合、午前2時に実行されません。 2AM後に誰かがサイトにアクセスしたときに実行されます。

詳しい情報公式:https://codex.wordpress.org/Function_Reference/wp_schedule_event

詳細情報公共ブログ:システム・レベルでのcronジョブの使用スケジュールの詳細に制御するため http://brianshim.com/webtricks/cron-job-wordpress/

Use PHP to create, edit and delete crontab jobs?

セットアップ/コンフィギュレーションは、あなたに基づいて異なりますサーバー&ホスティングタイプ。

関連する問題