我正在尝试按分类法为自定义帖子类型创建过滤器。
当我使用过滤器选项时,它会创建一个不起作用的URL:/projecten-test/?branche=industrie/page/2/.
但当我手动输入此url时,它确实起作用:/projecten-test/page/2/?branche=industrie
我该如何自动完成这一点呢?我应该更改将php GET添加到URL的方法吗?我应该更改此函数底部的wp\\U重写吗
//在自定义post typefunction paginate()上使用分页{全局$wp\\u query,$wp\\u rewrite;
$wp_query->query_vars[\'paged\'] > 1 ? $current = $wp_query->query_vars[\'paged\'] : $current = 1;
$pagination = array(
\'base\' => @add_query_arg(\'page\',\'%#%\'),
\'format\' => \'\',
\'total\' => $wp_query->max_num_pages,
\'current\' => $current,
\'show_all\' => true,
\'type\' => \'plain\',
\'prev_text\' => __(\'« Vorige\'),
\'next_text\' => __(\'Volgende »\')
);
if ( $wp_rewrite->using_permalinks() ) $pagination[\'base\'] = user_trailingslashit( trailingslashit( remove_query_arg( \'s\', get_pagenum_link( 1 ) ) ) . \'page/%#%/\', \'paged\' );
if ( !empty($wp_query->query_vars[\'s\']) ) $pagination[\'add_args\'] = array( \'s\' => get_query_var( \'s\' ) );
echo paginate_links( $pagination );
}
SO网友:Remi
这似乎可以解决问题。不确定这是否是最好的方法,因此,如果我错了,请告诉我:
通过更改:
if ( $wp_rewrite->using_permalinks() ) $pagination[\'base\'] = user_trailingslashit( trailingslashit( remove_query_arg( \'s\', get_pagenum_link( 1 ) ) ) . \'page/%#%/\', \'paged\' );
收件人:
if ( $wp_rewrite->using_permalinks() ) $_SERVER[\'REQUEST_URI\'] = user_trailingslashit( trailingslashit( remove_query_arg( \'s\', get_pagenum_link( 1 ) ) ) . \'page/%#%/\', \'paged\' );
它正在工作。现在,如果您从第4页输入分类法到第1页的新分类法,我所要做的就是创建一个回退。