2014-07-10 2 views
0

기본 기능을 사용하여 WordPress에서 cron 작업을 실행하고 싶습니다. 매 15 일마다 실행될 시간을 설정하고 싶습니다. 이것을 어떻게 설정할 수 있습니까?cron job in wordpress

function prefix_deactivation() 
{ 
    wp_clear_scheduled_hook('prefix_hourly_event_hook'); 
} 
register_deactivation_hook(__FILE__, 'prefix_deactivation'); 
function prefix_activation() 
{ 
    wp_schedule_event(time(), 'everyminute', 'prefix_hourly_event_hook'); 
} 
register_activation_hook(__FILE__, 'prefix_activation'); 

/* On activation, set a time, frequency and name of an action hook to be scheduled. */ 
function prefix_do_this_hourly() 
{ 
// do something every hour 
    cronjob_options(); 
} 
function cronjob_options() 
{ 
    /* your job */ 
} 
add_action('prefix_hourly_event_hook', 'prefix_do_this_hourly'); 
+0

에서 cron 작업에 대한 perfact 답변을 얻을 것이다 희망이 코드를 시도 파일. 지금은 구문 오류가 너무 많습니다. – feeela

+0

cron을 매 15 일마다 실행시키기 위해 이미 시도한 내용을 말씀해 주시겠습니까? – ojrask

답변

1
<?php 

    add_filter('cron_schedules', 'cron_add_day'); 

    function cron_add_day($schedules) { 
     $schedules = array(
      'day'  => array('interval' => 86400*1, 

           'display' => __('Every Day') 
          ), 
     ); 
     return $schedules; 
    } 
    ?> 
+1

귀하의 답변은 다른 답변과 동일합니다. –

1

는 소스에서와 같이 당신에게 코드를 포맷하십시오

add_filter('cron_schedules', 'cron_add'); 

function cron_add($schedules) { 

    $schedules = array(
     'everyminute'  => array('interval' => 129600, 
         'display' => __('Every Minute') 
         ), 
    ); 
    return $schedules; 
} 
0
add_filter('cron_schedules', 'cron_add_everyminute'); 

function cron_add_everyminute($schedules) { 

    $schedules = array(
     'everyminute'  => array('interval' => 60*60*24*15, 
                'display' => __('Every Minute') 
               ), 
    ); 
    return $schedules; 
} 
1

당신이 워드 프레스

<?php 

    add_filter('cron_schedules', 'cron_add_everyday'); 

    function cron_add_everyday($schedules) { 
     // Adds once everyday to the existing schedules. 
     $schedules = array(
      'everyday'  => array('interval' => 86400*1, 
      //set cron time you want call 86400 for 1 day change 1 as per your days... 
                 'display' => __('Every Day') 
                ), 
     ); 
     return $schedules; 
    } 
    ?>