使用Wordpress 4.0.1
我设置了查询以将归档帖子回显到页面。哪个工作正常,这是查询。
$paged = ( get_query_var( 'paged' ) ) ? absint( get_query_var( 'paged' ) ) : 1;
$args = array(
'post_type' => 'post',
'category__in' => array($category[0]->cat_ID), // gets the category ID higher up in the code.
'posts_per_page' => 5,
'paged' => $paged
);
if ($category[0]->cat_ID == 3) {
$today = date('Ymd');
if (!empty($year) && !empty($monthnum)) {
$args['meta_query'] = array(
array(
'key' => 'event_start',
'compare' => '<',
'value' => $today
)
);
} else {
$args['meta_query'] = array(
array(
'key' => 'event_start',
'compare' => '>',
'value' => $today
)
);
}
$args['order'] = 'ASC';
$args['orderby'] = 'meta_value';
$args['meta_key'] = 'event_start';
}
$the_query = new WP_Query( array_merge($wp_query->query, $args) );
我正在发布帖子,然后在底部我想要一个分页功能。
这是我的分页查询
$args = array(
'base' => add_query_arg( 'pagenum', '%#%' ),
'add_args' => true,
'format' => '/page/%#%',
'current' => max( 1, get_query_var('paged') ),
'total' => $wp_query->max_num_pages,
'prev_next' => true,
'prev_text' => __('« Previous'),
'next_text' => __('Next »'),
'end_size' => 3,
'type' => 'list'
);
echo paginate_links($args);
但最新发生的是底部的链接显示了两次这样的网址
http://domain.com/category/recent-seminars/page/2domain.com/category/recent-seminars/page/2/?future
这导致'Nothing Found'(不足为奇),但即使我删除了上半场或下半场,我仍然没有找到任何结果。
我在paginate_links查询中尝试了大量不同的组合,但没有任何工作。
修改
我已经将主查询修改为现在
$paged = get_query_var( 'paged' ) ? absint( get_query_var( 'paged' ) ) : 1;
$args = array(
'post_type' => 'post',
'category__in' => array($category[0]->cat_ID),
'paged' => $paged
);
$today = date('Ymd');
if ($category[0]->cat_ID == 3) {
$args['meta_key'] = 'event_start';
$args['meta_query'] = array(
array(
'key' => 'event_start',
'compare' => '>=',
'value' => $today
)
);
$args['order'] = 'ASC';
$args['orderby'] = 'meta_value_num';
}
这适用于第一页,但是当我单击下一页链接之一时,它就会停止工作,但是如果我取出$args['meta_query']
数组,则分页确实有效,但帖子在错误的订单。