为WordPress添加文章索引

文章索引相当于文章目录,点击目录自动跳转到相应位置,这就需要你的文章有小标题,像我经常用h3标签来做小标题,这样所有的h3标签就能形成一个索引目录。我们要做的就是把h3标签自动识别出来并组装成一个目录,好了,开始实现方法。

为WordPress添加文章索引

实现方法

在文章里必须有h3标签,每一个三级标题都会成为索引中的一项。将下面的代码放到function.php中,就会在你的文章中自动生成一个索引。



  1. function article_nav($content)
  2. {
  3.     $matches = array();
  4.     $ul_li = '';
  5.     $r = "/<h3>(.*?)</h3>/im";
  6.     if (preg_match_all($r$content$matches)) {
  7.         foreach ($matches[1] as $num => $title) {
  8.             $content = str_replace($matches[0][$num], '<h3 id="article_nav_' . $num . '">' . $title . '</h3>', $content);
  9.             $ul_li .= '<li><a href="#article_nav_' . $num . '" title="' . $title . '">' . $title . "</a></li>";
  10.         }
  11.         if (is_singular()) {
  12.             $content = '<div id="fn_article_nav"><div id="article_nav_title">Article Nav</div><ul>'
  13.                 . $ul_li . '<li><a href="#respond">发表评论</a></li></ul></div>' . $content;
  14.         }
  15.     }
  16.     return $content;
  17. }
  18. add_filter("the_content""article_nav");

索引样式

索引是生成了,但是只是在文章中的一个普通ul list,我们要做的是把他独立出来,所以只需要为它写一个css样式就好了。推荐用position:fixed把他固定到左边或者右边,下方提供了一个参考样式(见上图),可以根据自己的情况去修改。

  1. #article_nav_title{font-size:11px;text-align:center;line-height:15px;color:#cc0000;border-left:3px #cc0000 solid;border-bottom:1px #aaa dotted}
  2. #fn_article_nav{position:fixed;left:5px;top:140px;background-color:rgba(255,255,255,.55);border-radius: 0 3px 3px 0;box-shadow:0 0 2px #aaa}
  3. #fn_article_nav ul{padding:0!important;margin:0px!important}
  4. #fn_article_nav li{list-style:none;padding:3px;width:100px;margin:0;backgroundurl("images/li.png"no-repeat scroll 0 5px transparent!important;text-indent: 1.6em;}

精彩推荐

本站承接 WordPress / DedeCMS / ThinkPHP 等
系统建站、仿站、开发、定制等业务!

1. 本站所有资源来源于用户上传和网络,仅作为演示数据,如有侵权请邮件联系站长!
2. 本站承接各类网站建设,仿站,多平台小程序搭建制作!
3. 本站联系QQ:897918909
beetheme资源网 » 为WordPress添加文章索引

发表评论

售后服务范围1、服务器配置及主机购买推荐
2、模板使用范围内问题免费咨询
3、单价超过100元的模板免费一次安装,需提供服务器信息。
付费增值服务1、提供WordPress主题、插件汉化、优化等服务请详询在线客服
2、承接 WordPress、DedeCMS、ThinkPHP 等系统建站、仿站、开发、定制等服务
3、服务器环境配置(一般 ¥50-300)
4、网站中毒处理(需额外付费,500元/次/质保三个月)
售后服务时间周一至周五(法定节假日除外) 9:00-23:00
免责声明本站所提供的模板(主题/插件)等资源仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担,有部分资源为网上收集或仿制而来,若模板侵犯了您的合法权益,请来信通知我们(Email: admin@vip.beetheme.cn),我们会及时删除,给您带来的不便,我们深表歉意!

Hi, 如果你对这款模板有疑问,可以跟我们联系哦!

联系我们

提供最优质的资源集合

立即查看 了解详情

扫码了解我们!