无插件实现 WordPress 单篇文章分页

38

记得周良很久以前折腾的视觉天城教程网站,主要是一个设计教程网站,用的也是 WordPress。说到教程网站,文章当然会有很多图片,往往一篇文章就长到一个恐怖的程度,并且打开很慢,所以给网站添加一个分页的功能是当务之急!
在网上找了一些教程进行试验,主要都是使用 WordPress 自带隐藏的文章内容分页功能。

下面我们将说下如何显示 WordPress(我只在 WordPress 3.1.1 下面测试过)隐藏的文章内容分页功能:

  1. 找到wp-includes/js/quicktags.js ,在其中找到下面这个代码:
edButtons[edButtons.length]=new edButton(“ed_more”,”more”,”<!–more–>”,””,”t”,-1);

在这个代码的后面加上如下代码:

edButtons[edButtons.length]=new edButton(“ed_next”,”page”,”<!–nextpage–>”,”",”p”,-1);

注:是“ed_next ”,不是“ed_netx ”。是“–nextpage–”,不是“–netxpage–”,网上很多教程都是拼写错误。

  1. 继续在 wp-includes/js/quicktags.js 中找到如下代码:
j.Buttons[j.Buttons.length]=new edButton(a+”_more”,”more”,”<!–more–>”,”",”t”,-1);

在后面加上如下代码:

j.Buttons[j.Buttons.length]=new edButton(a+”_next”,”page”,”<!–nextpage–>”,”",”p”,-1);

保存 wp-includes/js/quicktags.js

  1. 找到 wp-includes/js/quicktags.dev.js ,找到下面代码
/* edButtons[edButtons.length] = new edButton(‘ed_next’ ,’page’ ,’<!–nextpage–>’ ,” ,’p’ ,-1 ); */

将其注释符号去掉,如下:

edButtons[edButtons.length] = new edButton(‘ed_next’ ,’page’ ,’<!–nextpage–>’ ,” ,’p’ ,-1 );
  1. 找到 wp-admin/includes/post.php ,找到下面代码:
‘link’, ‘unlink’, ‘wp_more’,

在后面添加以下代码:

‘wp_page’,

好了,WordPress 3.1.1 隐藏的文章内容分页功能现在已经显示出来了。如图:(此图标和 more 图标相似)

下面我们还要往当前主题目录下single.php 里面添加分页函数,找到代码:

<?php the_content(); ?>

在下面添加分页函数:

<?php wp_link_pages(‘before=&after=&next_or_number=number&pagelink=第%页’); ?>

现在你可以添加一个长篇文章来测试效果了。当然了如果你会 CSS,你还可以美化一下效果。 关于函数 wp_link_pages 的用法可以查看 WordPress 官网 http://codex.wordpress.org/Template_Tags/wp_link_pages


此分页功能对搜索引擎不够友好,所以我们还得改造。此方法参照:http://wordpress.org.cn/thread-61875-1-1.html
1.我们找到当前主题目录下的header.php ,在之间加上如下代码:

<?php if ( is_singular() ){ ?> <link rel=”canonical” href=”<?php the_permalink(); ?>” /> <?php } ?>

2.找到当前主题目录下的 header.php,在输出 description 元标记的代码后添加:

<?php if (get_query_var(‘paged’)) { //判断是否为首页 echo ‘第’; echo get_query_var(‘paged’); //页码 echo ‘页’; }?>

此方法可能有些问题,我没有发现有任何改变。

3.避免feed输出也被分页,找到 wp-includes/query.php ,找到代码:

if ( strpos( $content, ‘<!–nextpage–>’ ) ) {

改为:

if ( strpos( $content, ‘<!–nextpage–>’ ) && (!is_feed()) ) {

改造基本完成,有什么问题提出来,大家可以交流下。 今天是国庆节,祝大家节日快乐!

如果你有设计或者 WordPress 方面的项目需求,可以和我联系 Email:wwwzhouliang@gmail.com。

作者主页 邮箱 微博 腾讯微博 QQ Twitter Facebook Google+

共 38 条评论

  1. 电脑爱好者 回复

    有没有直接根据字数 自动分页的…

    1. 周良 (文章作者) 回复

      自动没用。不过有个更加简单的方法,过几天写出来。

      1. 网赚大侠 回复

        其实很多人希望长文章可以实现自动分页,不用手动在文章内一个个添加分页标签。呵呵,我们都在寻找长文章自动分页,怎么到现在没看到您有写出这个自动分页的方法呢?

  2. 破折君 回复

    这个不错哈哈

    1. 周良 (文章作者) 回复

      嘿嘿,好的

  3. 破折君 回复

    这个不错哈哈

    1. 周良 (文章作者) 回复

      嘿嘿,好的

  4. 周良 回复

    好的

  5. 周良 回复

    好的

  6. 周良 回复

    有方法的,过几天修改一下

  7. 周良 回复

    有方法的,过几天修改一下

Leave a Reply

您的邮箱不会公开,当您的评论有新的回复时,会通过您填写的邮箱向您发送评论内容。 Required fields are marked *

返回顶部