私はワードプレスのブログでcronジョブを実装しようとしています。その私をチェックするためのCronとWordPressは機能しません。私は何を忘れましたか?
add_filter('cron_schedules', 'ten_minute_prefix');
function ten_minute_prefix($schedules)
{
$schedules['tenmins'] = array(
'interval' => 600,
'display' => __('10 minutes'),
);
return $schedules;
}
//This must be here always
add_action('my_task_hook', 'foo_task');
function foo_task()
{
file_put_contents('data.txt', date("Y-m-d H:i:s") . "task do it\r\n", FILE_APPEND);
}
//This is executing in my plugin page in tools section
function myplugin()
{
//For checking permissions
file_put_contents('data.txt', date("Y-m-d H:i:s") . "Task begin\r\n", FILE_APPEND);
wp_schedule_event(time(), 'tenmins', 'my_task_hook'); // hourly, daily and twicedaily
echo "SCHEDULE ACTION";
...
}
:私は、私はこのコード(PHP)を書いたことを私はいくつかのログ情報を一つのファイルに10分ごとに書き込みしようとしているテストのために、プラグインではこのようなものをしたい、のために行います実際にcronジョブを作成しました。たとえば、このプラグインを使用していますhttp://wordpress.org/extend/plugins/cron-view/。このプラグインは私にこの "エントリー#10:my_task_hook√アクションが存在する"と言います。
何も起こっていない、ファイルが書き込まれていない、何が問題なのですか?
編集:私は、ファイルを書き込むための権限を持っているかどうかを確認するために、私はmyplugin関数の1行を追加した
。実際、私はパーミッションを持っています、data.txtファイルはwp-admin /フォルダに作成されています。
編集2:
私はちょうどワードプレスのcronジョブを理解する!
WordPressのCronは実際のcronではなく、ユーザーがWebページを開いたときにのみ起動します。誰もページを開かないと、プロセスは起動しません。したがって、ブログに訪問者がいない場合、cronジョブは動作しません。
私が間違っている場合は、私に修正してください。
私は質問を編集しました。私は正しいアクセス権を持っていると思います。 – dlopezgonzalez