Php WordPress Cron作业
以下原因是什么: 计划外活动 及 添加行动“wp” 请看一下这段代码,它是一个简单的cron作业插件,每1分钟将数据插入数据库Php WordPress Cron作业,php,wordpress,cron,Php,Wordpress,Cron,以下原因是什么: 计划外活动 及 添加行动“wp” 请看一下这段代码,它是一个简单的cron作业插件,每1分钟将数据插入数据库 <?php /* Plugin Name: Cron Job Description: My Cron Job Version: 4.0 Author: Bassem License: GPL */ ?> <?php //Add Interval [ Minute ] function cron_add_minute($schedules) {
<?php
/*
Plugin Name: Cron Job
Description: My Cron Job
Version: 4.0
Author: Bassem
License: GPL
*/
?>
<?php
//Add Interval [ Minute ]
function cron_add_minute($schedules)
{
// Adds once every minute to the existing schedules.
$schedules['EveryOneMinute'] = array('interval' => 60,'display' =>( 'insert record into DB' ) );
return $schedules;
}
add_filter( 'cron_schedules', 'cron_add_minute' );
//==================================
//Create a new CronJob
function cronStartActive()
{
if( !wp_next_scheduled( 'mycron' ) )
{
wp_schedule_event(time(), 'EveryOneMinute', 'mycron' );
}
}
add_action('wp', 'cronStartActive');
//==================================
function cronStartDeactive(){
$timestamp = wp_next_scheduled ('mycron');
wp_unschedule_event ($timestamp, 'mycron');
}
register_deactivation_hook (__FILE__, 'cronStartDeactive');
//================================================================
function myWpTask()
{
global $wpdb;
$date=date('Y-m-d H:i:s');
$query="insert into _testcron(added_on) values('$date')";
$insert=$wpdb->query($query);
}
add_action ('mycron', 'myWpTask');
?>
代码运行良好,我遵循中的教程,但我需要了解一些要点:
cronStartDeactive函数的原因是什么?当我删除它时,cron作业仍然有效,那么使用它的目的是什么
添加动作“wp”、“cronStartActive”也是如此,当我评论它时,cron仍然有效。
如果您仔细阅读该文档,您会注意到,同时我们希望确保当插件被停用时,它是非计划的。所以基本上它的意思是。。当你停用插件时。。它应该先停止你的cronjob。@Mihai lorga当然我读过了,当你通过管理页面停用插件并停止它时,无论你是否编写cronStartDeactive,cron作业都会自动停止,….那么这个函数有什么用呢,这是我的问题它会自动停止,因为你停用了插件,这并不意味着cronjob在您的数据库中被标记为STOPPED。那么cronStartDeactive在DB中将其标记为STOPPED的优势是什么,因为一旦我停用插件,它将自动停止?就像当您使用微波炉时,您不让它完成,然后拔下它一样。下次你插上微波炉时,它会从你停止的地方开始。我想最好的做法是关掉电源,然后拔掉插头,你不这么认为吗?