首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >查询一个类别中的所有帖子,然后通过过滤post_meta将它们移动到另一个类别

查询一个类别中的所有帖子,然后通过过滤post_meta将它们移动到另一个类别
EN

Stack Overflow用户
提问于 2018-08-07 13:26:47
回答 1查看 30关注 0票数 1

来自一个类别的帖子几乎完全使用高级自定义域,它们包括来自自定义域的开始日期和结束日期。基本上,我想查询该特定类别(ICO)的所有帖子,看看预开始日期是否小于当前日期,移动类别x中的帖子,或者如果开始日期小于当前日期,则将其移动到类别y。我有2个开始日期和2个结束日期通过ACF中的重复字段。这些帖子是项目,它们有一个"pre“开始日期和一个正常的开始日期,两者都有结束日期。

到目前为止,我做到了这一点,但我不确定这是不是最好的解决方案,这就是为什么我求助于你们专业人士:)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?php

$args = array(
        'numberposts' => -1,
        'cat' => 13,
        'post_type' => 'post',
        'post_status' => 'publish',
        'category_name' => 'ico',
);

$the_query = new WP_Query( $args );
$posts = $the_query->posts;

foreach($posts as $post) {

$the_id = get_the_ID();
$curtime = date('d-m-Y');

    $content = get_field('overview', $the_id);
        if($content):
           foreach ($content as $key => $content): 
           $start_date = $content['ico_time_start'];
           $end_date = $content['ico_time_end'];
           $prestart_date = $content['pre_ico_time_start'];
           $preend_date = $content['pre_ico_time_end'];
           endforeach;
        endif;

    $newicoDate = date("d-m-Y", strtotime($end_date));
    $newpreicoDate = date("d-m-Y", strtotime($preend_date));
    $currenttime = new DateTime($curtime); 
    $icoEnd   = new DateTime($newicoDate);
    $preicoEnd = new DateTime($newpreicoDate);

    if ($preicoEnd < $currenttime) : wp_set_post_categories( $the_id, array( 13, 15 ) ); endif;
    if ($icoEnd < $currenttime) : wp_set_post_categories( $the_id, array( 13, 16 ) ); endif;
}
?>

我希望能够启动这个作为cron (而不是wp cron)每天一次或两次,以检查所有的类别,并移动他们,如果需要的话。

EN

回答 1

Stack Overflow用户

发布于 2018-08-07 15:05:54

像这样的东西在你的情况下是可行的。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# crontab -e
00 * * * * /usr/local/bin/php /home/user/yourscript.php

首先从Linux命令行问题

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
crontab -e

在第一行中,输入以下内容

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
00 * * * * /usr/local/bin/php /home/user/yourscript.php

第一组数字表示cron作业的时间。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51727962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文