加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 如何通过自定义字段日期订购wordpress帖子?

发布时间:2020-12-13 16:51:04 所属栏目:PHP教程 来源:网络整理
导读:我正在创建一个事件侧边栏部分,它只显示接下来的3个事件.我有自定义帖子类型和自定义字段都工作,但我似乎可以弄清楚如何按事件的开始日期订购帖子,这是一个自定义字段值.是否有一个 PHP函数可以比较日期并将它们组织成一个特定的顺序.我认为它还必须保留post
我正在创建一个事件侧边栏部分,它只显示接下来的3个事件.我有自定义帖子类型和自定义字段都工作,但我似乎可以弄清楚如何按事件的开始日期订购帖子,这是一个自定义字段值.是否有一个 PHP函数可以比较日期并将它们组织成一个特定的顺序.我认为它还必须保留post-id和新安排的日期,这样当我读完这些值时,我可以显示该日期的相应帖子.

有没有人有一个指导我的方向?

我想这就是我需要做的事情:

>阅读帖子并抓住日期
>使用与这些日期关联的post-id对日期进行排序
>阅读已排序的日期,并通过post-id重新显示前3个帖子

我迷失了如何对它进行编码……这就是我到目前为止所做的.此代码只是按wordpress中的发布日期显示它们.

<?php query_posts('post_type=events');
            if (have_posts()) : while (have_posts()) : the_post(); ?>
                <?php $dateStart = get_post_meta($post->ID,'date-start',true);?>
                <div class="date"><?php echo $dateStart; ?></div>

<?php endwhile; endif; wp_reset_query();  ?>

解决方法

我相信我能够回答我自己的问题. WordPress具有内置功能,可以比较帖子之间的自定义字段值.要比较日期,这是我的自定义字段值,它们必须采用’yyyymmdd’格式才能轻松比较它们.

我真的很惊讶,我没有必要制作多个循环并存储post-id或任何东西.无论如何,我希望这有助于其他人. :]

<?php 
        $args = array(
           'post_type' => 'events','posts_per_page' => 3,//limited myself to 3 posts
           'meta_key' => 'date-start',//name of custom field
           'orderby' => 'meta_value_num','order' => 'ASC'
        );
        query_posts($args);
        if (have_posts()) : while (have_posts()) : the_post(); ?>
            //Insert code here...
            //Test to see if it is sorting the posts (below)
            <?php $dateStart = get_post_meta($post->ID,true); echo $dateStart;?>

<?php endwhile; endif; wp_reset_query();  ?>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读