
精博原先的主题 typoxp-reloaded 的主页和分类页面是自带分页导航条功能的,后来换了现在这个新主题后,主页和分页就只剩下“下一页”和“上一页”这样的链接了。
我之前有尝试过 WP-PageNavi 插件,但是却没有见效,后来发现原来没有把主题上的以下代码删掉:
- <ul class="lead">
- <li class="prev"><?php next_posts_link(’PREVIOUS POSTS’) ?></li>
- </ul>
当我找到问题出在哪里之前,我发现了一个可以不使用插件就能够实现分页导航条功能的方法。
Smashing Magazine 发表了一篇《10 Killer WordPress Hacks》,里面介绍了通过修改代码的方法实现一些特殊的功能,其中就有如何实现分页功能的介绍。原文写得很好,下面是译文。
提出问题:
默认情况下,WordPress 具有显示上一页和下一页的链接功能。这总比什么都没有好,但是我不明白为什么 WordPress 那些人不直接把分页导航条作为默认分页功能呢。当然,我们可以通过插件来实现分页导航条的功能,但是如果直接在主题上插入代码来实现这个功能呢?
解决方法:
实现这个功能需要用到 WP-PageNavi 插件并把它直接插入到所用的主题。
1、明显,你首先需要下载 WP-PageNavi 插件。
2、解压后,把 wp-pagenavi.php 和 pagenavi-css.css 这两个文件上传到你的主题目录。
3、打开你想插入分页导航条的文件(例如 index.php、categories.php、search.php,等等),并且找到以下代码:
- <div class="navigation">
- <div class="alignleft"><?php next_posts_link(‘Previous entries’) ?></div>
- <div class="alignright"><?php previous_posts_link(‘Next entries’) ?></div>
- </div>
(主题不同,可能代码不同。例如精博的代码就是文章开头那些。)
把上面的代码替换成下面这些代码:
- <?php
- include(‘wp-pagenavi.php’);
- ?>
4、现在我们需要修改 WP-PageNavi 插件文件。先打开 wp-pagenavi.php 文件,然后找到下面这些代码(在第61行):
- function wp_pagenavi($before = ”, $after = ”) {
我们需要调用 pagenavi_init() 功能,所以把上面的代码修改成:
- function wp_pagenavi($before = ”, $after = ”) {
- pagenavi_init(); //Calling the pagenavi_init() function
5、基本上完成了。最后是把 wp-pagenavi 样式表添加到你的博客。打开 header.php 并添加以下一行代码:
- <link rel="stylesheet" href="<?php echo TEMPLATEPATH.’/pagenavi-css.css’;?>" type="text/css" media="screen" />
代码解释:
这个方法几乎是简单地把插件文件直接添加到主题文件里,同时需要执行调用 pagenavi_init() 功能,以确保分页导航条可以正常显示。
(我在这个基础上,把分页导航条的位置和背景色改了下,效果就如精博现在这个样子。)
更新:原文中所说的 pagenavi.css 应该全部改为 pagenavi-css.css.
相关博文:

不错的主意
记下了
呵呵
.-= 龙城瓶子´s last blog ..《2010年央视春晚节目单》 =-.
- spam
- offensive
- disagree
- off topic
Like