王尘宇王尘宇

研究百度干SEO做推广变成一个被互联网搞的人

为WordPress增加文章索引

文章索引相当于文章目次,点击目次自动跳转到响应位置,这就须要你的文章有小标题,像我经经常使用h3标签来做小标题,如许一切的h3标签就能够构成一个索引目次。我们要做的就是把h3标签自动识别出来并组装成一个目次,好了,入手下手完成要领。

完成要领

文章里必须有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;background: url("images/li.png") no-repeat scroll 0 5px transparent!important;text-indent: 1.6em;}

相关文章

评论列表

发表评论:
验证码

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。