Wordpress paginate_links()不起作用

时间:2015-03-03 11:45:42

标签: wordpress pagination

使用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']数组,则分页确实有效,但帖子在错误的订单。

0 个答案:

没有答案