Wordpress:在自定义帖子类型上存档具有变量和分页的页面

时间:2014-05-23 06:36:13

标签: wordpress pagination custom-post-type permalinks

我有自定义的帖子类型服务;

register_post_type( 'services', array( 
            'label' => 'Services',  
            'public' => true, 
            'supports' => array( 'title', 'editor','comments'),
            'rewrite'=>array('slug'=>'services'),
            'public' => true, 
                'capability_type' => 'post',
                'hierarchical' => false,
            'has_archive'=>true
            ) ); 

我添加了一个metabox来获取国家/地区数据。 我正在展示帖子;

$current_page = (get_query_var('paged')) ? get_query_var('paged') : 1; 
$country=get_query_var('country');
global $wp_query;
$wp_query = null;
$wp_query = new WP_Query( "
    post_type=services&
    meta_key=country&
    meta_value=$country
    &order=ASC&
    posts_per_page=5&
    paged=$current_page" );

此外,我将此添加到我的functions.php

function add_query_vars( $query_vars ) {
  $query_vars[] = 'country';
  return $query_vars;
}
add_filter( 'query_vars', 'add_query_vars' );
add_rewrite_rule(
    '^services/district-([^/]*)/?',
    'index.php?post_type=services&country=$matches[1]','top');  

http://www.domain.com/services/fr-district
所以;它工作得很好。但我的问题是分页。 我试着添加这个;

add_rewrite_rule(
        '^services/district-([^/]*)/page/([^/]*)?',
        'index.php?post_type=services&country=$matches[1]&paged=$matches[2]','top');  

但是,它还没有工作http://www.domain.com/services/fr-district/page/2 它给了我404错误。

0 个答案:

没有答案