wp-cron任务每5分钟更新一次结果


wp cron task update results every 5 min

我有一个从json脚本输出数据的结果函数/短代码。这个json脚本每5分钟更新一次,所以我想为这个函数做一个cron任务,每5分钟自行更新一次它,而不复制页面上的内容。

如何在wordpress页面上做到这一点?

function resultpage() {
    $output = '';
    $output .= '<div id="content">';
    $output .= '<div id="part-1">';
    $output .= getgames("lol");
    $output .= '</div>';
    $output .= ' <div id="part-2">';
    $output .= getgames("counterstrike");
    $output .= ' </div>';
    $output .= ' <div id="part-3">';
    $output .= getgames("dota2");
    $output .= ' </div>';
    $output .= ' <div id="part-4">';
    $output .= getgames("hearthstone");
    $output .= ' </div>';
    $output .= '</div>';
    return $output;
}
add_shortcode('resultpage', 'resultpage');
 add_filter( 'cron_schedules', 'cron_add_5min' );
 function cron_add_5min( $schedules ) {
    $schedules['5min'] = array(
        'interval' => 5*60,
        'display' => __( 'Once every five minutes' )
    );
    return $schedules;
 }
add_action( 'init', 'register_result');
function register_result() {
    // Make sure this event hasn't been scheduled
    if( !wp_next_scheduled( 'resultpage' ) ) {
        // Schedule the event
        wp_schedule_event( time(), '5min', 'resultpage' );
    }
}

您可以按照此说明自定义WP时间表事件。但是您可以手动添加cron选项卡。

  1. 创建一个编写函数的URL
  2. 运行命令crontab -e
  3. 添加作业,示例如下:

*/5 * * * * curl http://your_domain.com/file_where_function_is_written.php