首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使Wordpress文章输出按标题中指定的日期排序?以及如何在标题>=今天的日期中显示日期的帖子?

如何使Wordpress文章输出按标题中指定的日期排序?以及如何在标题>=今天的日期中显示日期的帖子?
EN

Stack Overflow用户
提问于 2018-06-14 06:57:38
回答 3查看 66关注 0票数 0

我是第一次在Wordpress上发布版面,所以如果问题太简单、太明显,我很抱歉:

我有一个即将到来的主修课的时间表在页面上。我需要按日期的升序显示文章(日期在文章标题中显示,或者,如果更方便,我可以创建一个带有日期的自定义日期字段)。日期格式为DD.MM.YY

此外,也有必要不显示带有过去日期的帖子。

请告诉我如何实现这一点?

下面是我当前的帖子代码:

代码语言:javascript
复制
<?php
  $args = array(
    'numberposts' => 0,
    'category_name'    => schedule,
    'orderby'     => 'title',
    'order'       => 'ASC',
    'include'     => array(),
    'exclude'     => array(),
    'meta_key'    => '',
    'meta_value'  =>'',
    'post_type'   => 'post',
    'suppress_filters' => true,
  );

  $posts = get_posts( $args );

  foreach($posts as $post){ setup_postdata($post);
      ?>
      <div class="col-md-4 col-sm-6">
        <div class="content-wrapper bg-gray schedule-card">
          <div class="day"><span><?php the_field('week_day') ?></span><span><?php the_title() ?></span></div>
          <a class="event" href="<?php the_field('mc_descr_link_1') ?>"><span class="event-time"><?php the_field('time-mc-1') ?></span><span class="event-name"><?php the_field('mc-1') ?></span></a>
          <a class="event" href="<?php the_field('mc_descr_link_2') ?>"><span class="event-time"><?php the_field('time-mc-2') ?></span><span class="event-name"><?php the_field('mc-2') ?></span></a>
          <a class="event" href="<?php the_field('mc_descr_link_3') ?>"><span class="event-time"><?php the_field('time-mc-3') ?></span><span class="event-name"><?php the_field('mc-3') ?></span></a>
        </div>
      </div>
      <?php
  }

  wp_reset_postdata();
  ?>
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-06-14 07:36:14

最好为这些日期字段创建自定义字段。或者您可以直接将该日期字段与本机“日期”字段集成。但是,如果希望将它们与post_date字段分开,则需要实现以下内容:

  1. 创建一些自定义字段,其中包含正在告诉您的日期值。(CUSTOM_FIELD_WHICH_CONTAINS_DATE_VALUE)
  2. 将$args数组更改为: 'meta_key'=>'CUSTOM_FIELD_WHICH_CONTAINS_DATE_VALUE',=数组( 'category_name‘=>’调度‘,'orderby’=> 'meta_value',$args =‘$args’> 'post_type‘=> 'post');

注意,我还从上面的数组中删除了不必要的参数。

票数 0
EN

Stack Overflow用户

发布于 2018-06-14 09:44:37

如果您使用自定义字段进行日期:

代码语言:javascript
复制
$today = date('Y-m-d');//date format need to change according to your records
$args = array(
'numberposts' => 0,
'category_name'    => schedule,
'meta_key' => 'CUSTOM_DATE_FIELD_NAME',
'meta_type'=>'DATE',
'meta_query' => array(
    array(
        'key' => 'CUSTOM_DATE_FIELD_NAME',
        'value' => $today,
        'compare' => '>='
    )
),
'orderby' => 'meta_value_date',
'order' => 'ASC'
'exclude'     => array(),
'post_type'   => 'post',
'suppress_filters' => true,

);

票数 0
EN

Stack Overflow用户

发布于 2018-06-14 12:06:11

将CUSTOM_FIELD_DATE格式更改为Y-m-d Ex:2017-02-27

代码语言:javascript
复制
$today = date('Y-m-d');//Format is 2018-01-28
$args = array(
'post_type'   => 'post',
'post_status'=>'publish',
'meta_key'=>'date_field',
'meta_type'=>'DATE',
'orderby' => 'meta_value',
'order' => 'ASC',
'meta_query' => array(
    array(
        'key' => 'date_field',
        'value' => $today,
        'compare' => '>='
    )
),
);
$posts= new WP_Query( $args ); 
foreach($posts->posts as $post){ setup_postdata($post);
  ?>
  <div class="col-md-4 col-sm-6">
    <div class="content-wrapper bg-gray schedule-card">
      <div class="day"><span></span><span><?=$post->post_title;?></span></div>
    </div>
  </div>
  <?php

}

代码语言:javascript
复制
 wp\_reset\_postdata();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50851361

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档