我正在使用下面的函数根据当前日期将自定义帖子类型分类设置为某个术语。这适用于列出场馆即将举行、正在进行和未来活动的活动。
我需要根据当前日期自动更新分类术语。现在,这个函数只有在我进入帖子并单击update以便在save\\u post上运行时才起作用。
其他人提到我需要使用javascript来实现这一点,但说到js,我很笨。
功能如下:
//Set post_status based on the current date
function set_event_status($post_ID) {
$start = strtotime(get_field(\'start_date\'));
$end = strtotime(get_field(\'end_date\'));
$now = strtotime(\'now - 7 hours\');
if ($start && $end) {
if (($start <= $now) && ($end >= $now)) {
$status = \'playing_now\';
} elseif ($start >= $now) {
$status = \'opening_soon\';
} elseif ($end < $now) {
$status = \'closed\';
}
} elseif ($start) {
if ($start <= $now) {
$status = \'closed\';
} elseif ($start >= $now) {
$status = \'opening_soon\';
} elseif ($start == $now) {
$status = \'playing_now\';
}
} else {
$status = \'closed\';
}
wp_set_post_terms( $post_ID, $status, \'event_status\' );
return $post_ID;
}
add_action( \'save_post\', \'set_event_status\' );