如何使用wp cron作业运行wordpress短代码

如何使用wp cron作业运行wordpress短代码,wordpress,woocommerce,cron,Wordpress,Woocommerce,Cron,我正在用wordpress开发我的自定义插件。我想每30分钟运行一次插件快捷码功能。显示woocommerce产品评论的插件功能。我的插件功能如下。当我在产品上添加新评论时,“[wc_评论]”快捷代码显示所有评论。我想使用wp cron作业运行'[wc_reviews]短代码。如何做到这一点任何人请帮助我 function wpcron_intervals( $schedules ) { // one minute $one_minute = array(

我正在用wordpress开发我的自定义插件。我想每30分钟运行一次插件快捷码功能。显示woocommerce产品评论的插件功能。我的插件功能如下。当我在产品上添加新评论时,“[wc_评论]”快捷代码显示所有评论。我想使用wp cron作业运行'[wc_reviews]短代码。如何做到这一点任何人请帮助我

function wpcron_intervals( $schedules ) {

        // one minute

        $one_minute = array(
                        'interval' => 60,
                        'display' => 'One Minute'
                    );

        $schedules[ 'one_minute' ] = $one_minute;

        // five minutes

        $five_minutes = array(
                        'interval' => 300,
                        'display' => 'Five Minutes'
                    );

        $schedules[ 'five_minutes' ] = $five_minutes;

        // return data

        return $schedules;

    }
    add_filter( 'cron_schedules', 'wpcron_intervals' );



    // add cron event
    function wpcron_activation() {

        if ( ! wp_next_scheduled( 'example_event' ) ) {

            wp_schedule_event( time(), 'five_minutes', 'example_event' );

        }

    }
    register_activation_hook( __FILE__, 'wpcron_activation' );

    // remove cron event
    function wpcron_deactivation() {
        wp_clear_scheduled_hook( 'example_event' );

    }
    register_deactivation_hook( __FILE__, 'wpcron_deactivation' );

    function wc_reviews_function ($values){

    $wc_reviews = get_comments( 
        array( 
            'status' => 'approve', 
            'post_status' => 'publish', 
            'post_type' => 'product',
            'parent' => '0',
            'number' => 10,
            'orderby' => 'date',
         'order' => 'DESC',
         'date_query' => array(
                array(
                'after' => '30 days ago',
                  )
               )

            ) 
        );

    if ( $wc_reviews ) { 
?>        
  <div class="testimonials">    
  <div class="row items" data-equalizer="" data-equalizer-mq="">
  <?php
        foreach ( $wc_reviews as $wc_review ) {   
  ?>
    <div class="item large-3 medium-6 columns">
        <div class="inner" style="">

             <a href="<?php echo get_permalink($wc_review->comment_post_ID); ?>"><?php echo get_the_post_thumbnail($wc_review->comment_post_ID, array( 150 , 150 ) ); ?>

             <h5><a href="<?php echo get_permalink($wc_review->comment_post_ID); ?>"></a></h5>

           </div>
    </div>    

  <?php 
        }
  ?>            
  </div>
</div>

<?php

        //if there is no reviews
        } else {
            echo'There are no reviews at all';
        }

}//end function



add_action( 'example_event', 'wc_reviews_function' );
add_shortcode( 'wc_reviews', 'wc_reviews_function' );
函数wpcron\u间隔($schedules){
//一分钟
$1_分钟=阵列(
“间隔”=>60,
'显示'=>'一分钟'
);
$schedules['one_minute']=$one_minute;
//五分钟
$5_分钟=阵列(
“间隔”=>300,
'显示'=>'五分钟'
);
$schedules['five_minutes']=$five_minutes;
//返回数据
返回$时间表;
}
添加过滤器(“cron_计划”、“wpcron_间隔”);
//添加cron事件
函数wpcron_activation(){
如果(!wp_next_scheduled('example_event')){
wp_计划_事件(time(),“五分钟”,“示例_事件”);
}
}
注册激活钩子(uuu文件,'wpcron_激活');
//删除cron事件
函数wpcron_停用(){
wp_clear_scheduled_hook(“示例事件”);
}
寄存器u停用u挂钩(uu文件uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu;
函数wc_reviews_函数($values){
$wc\u reviews=获取评论(
数组(
“状态”=>“批准”,
“发布状态”=>“发布”,
“post_类型”=>“产品”,
“父项”=>“0”,
“数字”=>10,
'orderby'=>'date',
“订单”=>“描述”,
“日期查询”=>数组(
排列(
'在'=>'30天前'之后,
)
)
) 
);
如果($wc_审查){
?>