【问题标题】:Custom post type upcoming events for week and next month一周和下个月的自定义帖子类型即将发生的事件
【发布时间】:2018-03-23 05:16:15
【问题描述】:
$todayDate = date('m/d/Y');
$futureDate = strtotime ( '+7 days' , strtotime ( $todayDate ) ) ;
$futureDate = date ( 'm/d/Y' , $futureDate );
$args = array(
    'post_type' => 'events',
    'post_status' => 'publish',
    'posts_per_page' => -1,
    'event_category' => 'events',
    'meta_query' => array(
        array(
        'key' => 'event_date',
        'compare' => '>=',
        'value' => $futureDate,
        )
        ),
    'meta_key' => 'event_date',
    'orderby' => 'meta_value',
    'order' => 'ASC',
);

我想展示下周或下个月即将举行的活动。我设置了这个 args 数组,但仍然给了我昨天的帖子,并且没有按照我想要的方式排序。另外,如何在我的查询中删除昨天的帖子..

【问题讨论】:

  • 您的 args 数组不使用 $todayDate 作为标准。它只使用未来 7 天的$futureDate。这是否会限制您的 args 搜索该日期之前的事件,包括今天之前的事件?
  • 我想将事件/帖子从今天限制到未来 7 天,并摆脱仍在显示的过去事件(昨天的事件/帖子)。 @mcv

标签: php wordpress


【解决方案1】:

因此,如果您希望您的参数限制在今天和未来日期之间的事件,其中未来日期是今天 +7 天。

因此,您希望修改 args 以包含具有以下参数的另一个数组。试试这个:

//event_date >= $todayDate
//event_date <= $futureDate

$args = array(
    'post_type' => 'events',
    'post_status' => 'publish',
    'posts_per_page' => -1,
    'event_category' => 'events',
    'meta_query' => array(
        array(
        'key' => 'event_date',
        'compare' => '>=',
        'value' => $todayDate,
        ),
        array(
        'key' => 'event_date',
        'compare' => '<=',
        'value' => $futureDate,
        ), 
        ),
    'meta_key' => 'event_date',
    'orderby' => 'meta_value',
    'order' => 'ASC',
);

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-10-14
  • 2014-02-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-11
相关资源
最近更新 更多