WordPress的页面导航不工作tag.php

问题描述:

我想添加分页到我的tag.php文件在WordPress中,让它工作我用wp_pagenavi()。我已经设置了$paged变量,但由于某些原因,当我点击第2页它带我到一个破碎的页面,试图代码:WordPress的页面导航不工作tag.php

global $query_string; 
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1; 
query_posts('posts_per_page=6&tag='.$current_tag."&paged=".$paged ); 
while (have_posts()) : the_post(); 
/* LOOP STUFF */ 

endwhile; 
wp_pagenavi(); 
wp_reset_query(); 


endif; 

我怎样才能得到tag.php去2页?

+0

你不应该使用'query_posts',看看http://stackoverflow.com/a/16288794/1981996 – diggy 2013-04-30 11:52:28

+0

我想我需要使用它的WP页面navi,但? – Adrian 2013-04-30 11:56:09

+0

从插件的FAQ:http://scribu.net/wordpress/wp-pagenavi/right-way-to-use-query_posts.html – diggy 2013-04-30 11:58:09

如上意见提出,从tag.php删除query_posts东西和修改functions.php查询:

add_action('pre_get_posts','so16299109_pre_get_posts'); 
function so16299109_pre_get_posts($query) 
{ 
    if(is_tag() && $query->is_main_query()){ 
     $query->set('posts_per_page', 6); 
    } 
    return $query; 
} 
+0

谢谢,我没有意识到,修改将如你所说的那样简单。这工作。 – Adrian 2013-04-30 14:55:57

+0

我可以问一个其他的事情吗,预先获得帖子前的数字在哪里? so16299109 – Adrian 2013-04-30 15:12:38

+1

这就是Stackoverflow中问题的ID!前缀函数名称被认为是很好的做法,参见例如。 http://nacin.com/2010/05/11/in-wordpress-prefix-everything/ – diggy 2013-04-30 15:21:21