【发布时间】:2014-03-08 12:14:17
【问题描述】:
我有一个显示“事件”自定义帖子类型的事件页面。在页面顶部,我在即将发生的事件列表中有 2 个即将发布的帖子,然后在底部,我在过去的事件列表中有 3 个过去的事件。根据“事件日期”自定义字段是否过去,帖子会显示在每个部分中。过去的事件使用 WP page navi 插件对帖子进行分页。 'posts_per_page' 设置为 1 作为测试。
应该有 3 个页面分别显示 1 个过去的帖子。不幸的是,分页显示 5 页,前两页没有显示任何帖子,好像即将发布的帖子列表中的帖子表现得像鬼一样。我已经删除了即将发布的帖子列表作为测试,但这没有任何区别。
有人知道这是什么原因吗?我不知道。谢谢。
<?php
$temp_post = $post; // Store the Page the Post
// Get the current date
$current_date = date('M d, Y', time());
$current_date = strtotime( $current_date );
$wp_query= null;
$wp_query = new WP_Query();
$args = array( 'post_type' => 'events','posts_per_page' => 1,'paged' => $paged,'meta_key' => 'event_date', 'orderby' => 'meta_value_num', 'order' => 'DESC');
$wp_query->query( $args );
if ( $wp_query->have_posts() ) :
while ( $wp_query->have_posts() ) : $wp_query->the_post();
// Get the date custom field
$post_date = get_field('event_date');
$post_date = strtotime( $post_date );
// If older than post date, don't show it
if( $current_date > $post_date ): ?>
MY POST CONTENT GOES HERE
<?php endif; // END DATE FILTER ?>
<?php endwhile; //END LOOP ?>
<?php /* Start wp-pagenavi support */ ?>
<?php if(function_exists('wp_pagenavi') ) :
echo '<nav class="pag">'; ?>
<?php wp_pagenavi(); ?>
<?php echo '</nav>'; ?>
<?php else: ?>
<?php twentyeleven_content_nav( 'nav-below' ); ?>
<?php endif; ?><?php /* End wp-pagenavi support */ ?>
<?php endif; ?>
<?php $post = $temp_post; // Reset the Post ?>
【问题讨论】:
标签: wordpress pagination