新的wp_query分页给出了404

时间:2012-07-05 10:24:58

标签: wordpress pagination http-status-code-404 permalinks

我终于厌倦了我的耐心搜索谷歌试图找到解决方案...任何帮助非常赞赏。

我在WP 3.3.2上设置了一个站点,我使用wp_query来查询自定义帖子类型:

$paged = (get_query_var('page')) ? get_query_var('page') : 1;

$args = array(
    'post_type' => 'feedback',
    'meta_key' => 'Overall how would you grade this course?',
    'orderby' => $orderby,
    'order' => $order,
    'posts_per_page' => '10',
    'paged' => $paged
    );

$feedback  = new WP_Query($args);

我在那里还有一些额外的元查询,但这就是它的关键。

我的问题是分页...我的网址是domain.com/client-feedback/page/2/,但我得到了404.

到目前为止,我已尝试获取如上所示的$ paged变量,并从URL中提取页码。我很有信心我已经钉了这个。如果我强制'paged' => 2我得到第二页结果没问题。

我也尝试过如图所示运行查询,但也劫持$ wp_query(将原始数据转储到$ temp变量并在完成后恢复它。)

无论我尝试什么,我都无法超越第1页。我一直在使用pagenavi插件轻松但禁用它没有任何区别。

我最好的猜测是它与永久链接相关 - 我已尝试/%category%/%postname /和/%postname%/但这也没有区别。

我对这个问题走到了尽头 - 任何想法/见解/哀悼都非常感激。

大卫。

1 个答案:

答案 0 :(得分:1)

我给我的自定义帖子类型添加了一个复数slug并添加了此函数以解决问题。

add_filter( 'redirect_canonical', 'department_listing_disable_redirect_canonical' );

function department_listing_disable_redirect_canonical( $redirect_url ) 
{

    if ( is_singular( 'your_custom_post_type_SLUG' ) )
        $redirect_url = false;

    return $redirect_url;
}

希望有帮助= D