Php 操纵一个默认查询不';在wordpress中无法正常工作
我试图在我的归档事件.php页面上操作一个默认查询。我想查询的是按最近的事件(基于日期)排序事件(我的自定义帖子)。 这是我在functions.php中的代码:Php 操纵一个默认查询不';在wordpress中无法正常工作,php,wordpress,Php,Wordpress,我试图在我的归档事件.php页面上操作一个默认查询。我想查询的是按最近的事件(基于日期)排序事件(我的自定义帖子)。 这是我在functions.php中的代码: function university_adjust_queries ($query) { if(!is_admin() && is_post_type_archive('event') && $query->is_main_query()) { $today = date('Ymd'); $
function university_adjust_queries ($query) {
if(!is_admin() && is_post_type_archive('event') && $query->is_main_query()) {
$today = date('Ymd');
$query->set('meta_key','event_date');
$query->set('orderby','meta_value_num');
$query->set('order','ASC');
$query->set('meta_query', array(
array(
'key' => 'event_date',
'compare' => '>=',
'value' => $today,
'type' => 'numeric'
),
),);
}
}
add_action('pre_get_posts','university_adjust_queries');
这是我在archive event.php中的代码:
while ( have_posts() ) {
the_post();
?>
<div class="event-summary">
<a class="event-summary__date t-center" href="#">
<span class="event-summary__month">
<?php
try {
$event_Date = get_field( 'event_date' );
$event_Date = date( 'Y-m-d', strtotime( $event_Date));
$eventDate = new DateTime($event_Date);
} catch ( Exception $e ) {
echo 'error happened';
}
echo $eventDate->format( 'M' );
?></span>
<span class="event-summary__day"><?php
echo $eventDate->format('d');
?></span>
</a>
...
while(have_posts()){
_post();
?>
...
但问题是,即使我的事件在我的管理仪表板中有不同的日期,它们的日期显示完全错误(有些是重复的!)
这是我的存档事件页面的图像:
您是否尝试将元查询中的类型更改为最新类型
$query->set('meta_query', array(
array(
'key' => 'event_date',
'compare' => '>=',
'value' => $today,
'type' => 'DATE'
),
),);