我有一些自定义字段的自定义帖子类型。“日期”字段和“状态”字段就是其中之一。
这里我试图根据“日期”字段与当前日期的比较来更新“状态”字段的meta\\u值。
我有一些自定义字段的自定义帖子类型。“日期”字段和“状态”字段就是其中之一。
这里我试图根据“日期”字段与当前日期的比较来更新“状态”字段的meta\\u值。
WP_Query()
作品这里有一个简单的循环让您开始,它将获取Taxononomy中的所有帖子,如果<“em>现在晚于当时”;满足条件。
$nitish_args = array(
\'post_type\' => \'post\',
\'tax_query\' => array(
array(
\'taxonomy\' => \'YOUR TAXONOMY HERE\',
),
),
);
$nitish_query = new WP_Query( $nitish_args );
if( $nitish_query->have_posts() ){
// Get "current" unix timestamp
$now = time();
while( $nitish_query->have_posts() ){
$nitish_query->the_post();
// Get "date" meta field as unix timestamp
$then = strtotime( get_post_meta( $post->ID, \'date\', true ) );
if( $now > $then ){
// $now is later than $then, update post.
update_post_meta( $post->ID, \'status\', \'NEW VALUE\' );
}
}
wp_reset_postdata();
}
听起来像是一个简单的if条件。您可以在以下服务器上运行此操作:Cron发布视图(添加到single.php或使用is_singular()
或is_single()
函数中的函数。php)
save_post()
WP\\U查询或存档模板循环中的操作// Get "date" meta field as unix timestamp
$then = strtotime( get_post_meta( $post_id, \'date\', true ) );
// Get "current" unix timestamp
$now = time();
if( $now > $then ){
// $now is later than $then, update post.
update_post_meta( $post_id, \'status\', \'NEW VALUE\' );
}
基本上,您只需要获取date
字段,将其与当前unix时间戳进行比较time()
函数,然后查看;“现在”;大于;然后是“;,如果有,请更新帖子。