WordPress文章分页方法,附静态化分页链接美化

关键字:WordPress文章分页方法,WP文章分页,WordPress分页链接结构美化,WordPress分页美化,WP分页美化!

        这里说的分页并非是常见的日志分页,这是WordPress长篇文章分页方法。如果你想让一篇文章实现分页效果,不防认真看看这方法。游子已经测试过了非常成功。

       原文地址:WordPress 分页文章静态化的更优解决方案 这里有很多分页规则,这里游子以/archives/%post_id%.html 永久链接为例,如果你的永久链接不是这样你可以到原文出处找一个合适自己的规则!

       WordPress文章分页方法:这个方法其实WordPress一直都有,只是被影藏了。 < !--more-- > 这个标签应该不会陌生就是显示摘要的,如果不想让全文在首页显示就可以用< !--more-- > 将其截断即可达到显示摘要,如果再配合“WP中文工具箱”一起使用就能实现不过滤输出带HTML
       唉!有扯远了,这里要说的是文章分页方法其实同< !--more-- > 是一样的 < !--nextpage-- > 顾名思义就是下一页的意思了。写文章的时候在HTML源代码里加入< !--nextpage-- >就可以实现文章分页。但前提是主题single.php中要有相应的调用才行。

WordPress 分页文章也可以静态化

archives-post_id静态规则代码:
// 添加分页处理规则把这些加到模板函数functions.php文件中,不要复制这中文
function add_custom_post_rewrite_rules($rules) {
  $custom_rules = array(
    'archives/([0-9]+)-([0-9]+)\.html$' => 'index.php?p=$matches[1]&page=$matches[2]',);
  $rules = array_merge($custom_rules, $rules);

  return $rules;
add_filter('post_rewrite_rules', 'add_custom_post_rewrite_rules');
// 修改分页链接
function my_wp_link_pages($args = '') {
  $args .= ($args ? '&' : '') . 'echo=0';
  $links = wp_link_pages($args);
  $links = preg_replace_callback('|(archives/)([0-9]+)(\.html)(/)([0-9]+)|', 'custom_page_link', $links);

  echo $links;
}

function custom_page_link($matches) {
  return $matches[1].$matches[2].'-'.$matches[5].$matches[3];
}

主题目录下的single.php文件查找<?php wp_link_pages(); ?>  替换为 <?php my_wp_link_pages(); ?> 如果没有<?php wp_link_pages(); ?>则直接把<?php my_wp_link_pages(); ?>粘贴到需要让分页显示的位置。

// 这些添加到主机根目录.htaccess文件中
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^archives/([0-9]+)\.html/trackback/?$ index.php?p=$1&tb=1 [L]
RewriteRule ^archives/([0-9]+)\.html/feed/(feed|rdf|rss|rss2|atom)/?$ index.php?p=$1&feed=$2 [L]
RewriteRule ^archives/([0-9]+)\.html/(feed|rdf|rss|rss2|atom)/?$ index.php?p=$1&feed=$2 [L]
RewriteRule ^archives/([0-9]+)\.html/page/?([0-9]{1,})/?$ index.php?p=$1&paged=$2 [L]
RewriteRule ^archives/([0-9]+)\.html/([0-9]+)/?$ index.php?p=$1&page=$2 [L]
</IfModule>

        好了,基本上就这些!注意: “当你修改完成后,需要到后台设置里重新修改一次“永久链接形式”,无需改动设置,只需点一下“更新”即可(为什么需要这样,原因不清楚,可能是WP需要更新文件)否则会出现404错误。”

       分页演示:http://www.redchalk.com.cn/archives/1-2.html 没有静态化分页链接美化的时候分页出来是这样的archives/1.html/2使用了静态化分页链接美化以后就是 archives/1-2.html 演示地址就是!

最后编辑于:2010/6/17作者: 游子

热爱一切美好的新事物,搞网站也被网站搞,剁手折腾。关注与学习Web相关技术与UI\UE\UED\UCD\Server相关知识,服务器运维、前端、后端、非专业程序猿、非高级前端后端攻城师!

8 条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注

arrow grin ! ? cool roll eek evil razz mrgreen smile oops lol mad twisted wink idea cry shock neutral sad ???

  1. 亿品元素说道:
    4#

    这个好,正在找这样的方法

  2. 3#

    终于找到我想要的答案了。。呵呵

    • 游子说道:

      貌似,你真的实现了分页!

  3. 落伍者说道:
    2#

    不过有点麻烦,加文章的时候,还需要手动增加,如果要是能自动分页那就好了。

    • 游子说道:

      自动分页一时半会是不无实现的,以后的版本应该分有这功能。CMS程序自动分页才完美,WP有些难。

  4. 落伍者说道:
    1#

    游子出品,真的不错。。。。好好学习,正好用着。

    • 游子说道:

      哈哈!我也是转别人过来的,只是把自己使用的方法写出来。测试已经成功,可以学习一下