WordPress-代码实现自动添加-文章目录

wordpress admin 3个月前 (05-10) 944次浏览 0个评论
文章目录[隐藏]

前言

虽然有许多的插件可以实现此功能,但是我的宗旨是,能用自己用代码实现的就不用插件!!!

没有用 css,感觉这样挺简洁好看的,恩 就这样吧。

把以下代码添加至主题文件 functions.php 中即可。

显示效果

代码

//文章目录
function article_index($content) {
  $matches = array();
  $ul_li = '';
  $r = '/<h([1-1]).*?\>(.*?)<\/h[1-1]>/is';  // 1-1 是显示几级标题,可自行修改
  if(is_single() && preg_match_all($r, $content, $matches)) {
    foreach($matches[1] as $key => $value) {
      $title = trim(strip_tags($matches[2][$key]));
      $content = str_replace($matches[0][$key], '<h' . $value . ' id="title-' . $key . '">'.$title.'</h2>', $content);
      $ul_li .= '<li><a href="#title-'.$key.'" title="'.$title.'">'.$title."</a></li>\n";
    }
    $content = "\n<div id=\"article-index\">
    <strong>文章目录</strong>
    <ul id=\"index-ul\">\n" . $ul_li . "</ul>
    </div>\n" . $content;
  }
  return $content;
}
add_filter( 'the_content', 'article_index' );

小泉博客|本站的文章和资源来自互联网或者站长的原创,按照 CC BY -NC -SA 3.0 CN
协议发布和共享,转载或引用本站文章应遵循相同协议。如果有侵犯版权的资源请尽快联系站长,我们会在24h内删除有争议的资源。转载请注明原文链接:WordPress-代码实现自动添加-文章目录
喜欢 (1)
发表我的评论
取消评论
表情 加粗 删除线 居中 斜体 签到