我有以下不太有效的循环。我只想显示即将发生的事件,包括今天发生的事件。
目前,它显示所有即将发布的帖子以及今天日期之前的帖子。
我哪里错了?
<?php
$today = date('Ymd');
$portfolioloop = new WP_Query(
array(
'post__not_in' => array(4269),
'paged' => get_query_var('paged'),
'meta_key' => the_date(),
'post_status' => 'future,publish',
'post_type' => 'whatson',
'exclude' => '4269',
'posts_per_page' => 20,
'order' => 'ASC',
'meta_query' => array(
array('key' => the_date(),
'value' => $today,
'compare' => '>=')
),
)); ?>
<?php while ( $portfolioloop->have_posts() ) : $portfolioloop->the_post(); ?>
// content here.
<?php endwhile; // end of the loop. ?>
我试试看:
// Create a new filtering function that will add our where clause to the query
function filter_where( $where = '' ) {
$today = date('Ymd');
$where .= " AND post_date >= '$today' ";
return $where;
}
add_filter( 'posts_where', 'filter_where' );
$query = new WP_Query( $query_string );
remove_filter( 'posts_where', 'filter_where' );
<?php
$query = new WP_Query(
array(
'post__not_in' => array(4269),
'paged' => get_query_var('paged'),
'post_type' => 'whatson',
'exclude' => '4269',
'posts_per_page' => 20,
'order' => 'ASC'
)); ?>