我使用以下代码在我的wordpress页面上生成分页:
<?php
global $wp_query;
$big = 999999999; // need an unlikely integer
echo paginate_links( array(
'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
'format' => '?paged=%#%',
'current' => max( 1, get_query_var('paged') ),
'total' => $wp_query->max_num_pages
) );
?>
注意'format' => '?paged=%#%'
。根据Codex,漂亮链接的格式不同,即codex says
格式 (字符串)(可选)用于分页结构。默认值为
'?page=%#%'
,如果使用非常永久链接,则为'/page/%#%'
,其中'%#%'
将替换为页码。 默认值:'?page=%#%'
我得到的是,每当我更改永久链接格式时,我都必须更改主题文件中的php代码。这是非常繁琐的,所以有什么方法可以让我的分页适应永久链接风格,即如果我将永久链接风格改为漂亮,它不会破坏?
答案 0 :(得分:0)
我在Wordpress Codex here
中挖了一些东西using_mod_rewrite_permalinks - 返回true您的博客通过mod_rewrite使用“漂亮”永久链接。
所以试试这个
<?php
global $wp_query;
global $wp_rewrite;
$big = 999999999; // need an unlikely integer
if( $wp_rewrite->using_mod_rewrite_permalinks() ) {
myformat = '/page/%#%';
} else {
myformat = '?page=%#%';
}
echo paginate_links( array(
'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
'format' => myformat,
'current' => max( 1, get_query_var('paged') ),
'total' => $wp_query->max_num_pages
) );
?>