DUX主题小功能之为文章内容增加目录功能
![]() | ![]() | ![]() | ![]() |
| 【性价之王】 | 【线路之王】 | 【价格之王】 | 【配置之王】 |
| 【免费之王】 | 【香港首推】 | 【梯子之王】 | 【独服之王】 |

wordpress主题DUX还是非常强大的,折腾的也非常多,也有很多折腾的教程。今天分享一篇为文章内容增加目录功能,具体的操作在主题Functions.php文件中加入下面代码 (默认为4级标题索引,可以自行修改,比如将h4改h2,这样就二级标题作为文章目录了)。如果使用的其他主题,请自行修改“if (_hui(‘index_c’)) {}”这段代码。具体的代码如下:
1、在Functions.php添加
复制//小七博客-https://www.xqblog.com//文章目录if (_hui('index_c')) {function article_index($content) {$matches = array();$ul_li = '';$r = "/<h4>([^<]+)<\/h4>/im";if(preg_match_all($r, $content, $matches)) {foreach($matches[1] as $num => $title) {$content = str_replace($matches[0][$num], '<h4 class="title-'.$num.'">'.$title.'</h4>', $content);$ul_li .= '<li><a h="#title-'.$num.'" title="'.$title.'">'.$title."</a></li>\n";}$content = "\n<div id="article-index" class="article-index hidden-xs"><strong class="title">文章目录</strong><ul id="index-ul" class="index-ul">\n" . $ul_li . "</ul></div>\n" . $content;}return $content;}add_filter( "the_content", "article_index" );}2、 CSS代码:在主题目录 css/main.css
复制#article-index{position:relative; z-index:2;-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;-o-border-radius:2px;border-radius:2px;border:1px solid #DEDFE1;float:right;margin:0 0 15px 15px;padding:0 6px;width:200px;line-height:23px; background: #fff;}#article-index strong{border-bottom:1px dashed #DDDDDD;display:block;line-height:30px;padding:0 4px}#index-ul{margin:0;padding-bottom:10px;}#index-ul li{background:none repeat scroll 0 0 transparent;list-style-type:disc;padding:0;margin-left:20px}.index-more{padding-left:20px;}3、 JS代码,在js/main.js
//滚动到某个位置function scrollTo(ele, speed){if(!speed) speed = 300;if(!ele){$("html,body").animate({scrollTop:0},speed);}else{if(ele.length>0) $("html,body").animate({scrollTop:$(ele).offset().top},speed);}return false;}//右侧滑动到某个位置时,复制文章目录,并添加到侧栏指定标签内“.mulu ul”内,样式保持一致var muluBox = $(".mulu ul");var _html = $(".index-ul").html();if(_html){muluBox.html(_html);//当滚动距离大于侧栏高度和目录的原本高度时,目录才会显示。function resizeWindow(e){if($(window).width()>1000){var sidebarHeight = $(".sidebar").height();//文章滚动的过程中,目录的列表锚点会随着高度的变化而相应的改变,如上图中的图片规范是亮点$(window).scroll(function(){var winScrollTop = $(window).scrollTop();var items = muluBox.find("li");for(var i=0; i<items.length; i++){var anchor = $(".title-"+i);// console.log(anchor);var pos = anchor.offset();var winH = $(window).height();if(pos.top < (winScrollTop+20)){// console.log(i);muluBox.find("li").eq(i).addClass("current").siblings().removeClass();}}if(winScrollTop > sidebarHeight){$(".mulu").show().stop(true,false);}else{$(".mulu").hide();}})}}resizeWindow();//点击目录下边的小按钮可以隐藏目录和展开目录$(window).bind("resize", resizeWindow);$(".mulu-toggle").on("click",function(){var muLu = $(".mulu");$(this).toggleClass("active");if(muLu.is(":visible")) muLu.hide();else muLu.show();})}else{$(".mulu, .mulu-toggle").hide();}var indexUL = $(".index-ul");var indexLi = $(".index-ul li").length;//目录的个数大于7时,收缩起来,点击展开更多后展开,点击收缩起来时,恢复原样if(indexLi >7 ){$(".index-ul li:gt(6)").hide();indexUL.after("<li class='index-more'><a h='#'>展开更多</a>");$(".index-more").on("click","a",function(){var more =$(".index-ul li:gt(6)");var _this = $(this);if(more.is(":visible")){more.hide();_this.text("展开更多");}else{more.show();_this.text("伸缩起来");}return false;})}//点击目录的链接,会跳转到相对应的位置$(".index-ul, .mulu ul").on("click","li",function(){var itemName = $(this).find("a").attr("h").slice(1);$(this).addClass("current").siblings().removeClass();scrollTo("."+itemName,500);return false;})4、 在主题中options.php添加代码
复制 $options[] = array( 'name' => '文章目录', 'desc' => '四级标题作为文章索引目录', 'id' => 'index_c', 'std' => '1', 'type' => 'checkbox');注:位置自己选择添加即可!在添加之前请把相关的文件备份一下!
[dux主题]历史优惠活动内容
猜你可能想看的VPS
- 疯狂猜成语 图猜成语一个人撒尿灭火是什么成语?全球[VPS测评]
- 6yun→45 元 月 256MB 内存 5GB 空间 2TB 流量 1虚拟空间(主机)
- 优惠 糖果主机→美国云服务器上线 年付 348 元起 另有中美极速专线套美国VPS[主机]
- 新商家-KloudNex→$40 年 2 核 2GB 内存 32GB 空虚拟空间(主机)
- 疯狂猜成语 图猜成语三个人中的两个人都夸中间的人是什么成语?全球[VPS测评]
- 储存 VPS $8.5 月 1G 内存 1T 硬盘 100Mbps 不限全球[VPS测评]
- PacificRack→$7.25 年 KVM-384MB 8GB 1T全球[VPS测评]
- 做站 三优云→2 核 4G 50G SSD 5Mbps 不限流量 香港 香港VPS[主机]
- azvds→$1.3 月 1GB 内存 10GB NVME 空间 不限流虚拟空间(主机)
- WordPress插件:有字库插件美化文章标题和内容全球[VPS测评]
- 如何通过巧用WordPress Trackbacks和Pingbacks全球[VPS测评]
- Hostodo拉斯维加斯机房VPS促销送DirectAdmin授权,硬盘全球[VPS测评]
- 最简单的 WordPress 网站更换域名教程全球[VPS测评]
- WordPress网站如何基于宝塔面板的LNMP服务器进行再优化全球[VPS测评]
- Debian 10 升级 Debian 11 教程全球[VPS测评]
- NSS TW-台北VPS 测试记录 (14天免费试用)三网直连 解锁流媒全球[VPS测评]
- Wikihost(idc.wiki) → 香港Cera 大宽带大流量带香港VPS[主机]
- 2022年亚马逊Prime会员日将于7月12日和13日举行,覆盖24个站全球[VPS测评]
- 吸血鬼崛起服务器怎么快速搭建?全球[VPS测评]
- 兼容移动和PC的loading加载和toast消息插件全球[VPS测评]
- 又一跨境电商产业园落户!中山石岐签约引进16个项目全球[VPS测评]
- 潮科技|阿里云发布第七代高主频云服务器ECS和含光800云服务器全球[VPS测评]
- HostKVM香港云地VPS,2核4G内存折后$8.4/月,30M大带宽香港VPS[主机]
- 香港vps免费:青云互联,1核1G/50G硬盘/500GB流量/2M带宽香港VPS[主机]
- 七安云怎么样?香港CN2+BGP线路VPS 1核1G10M 16/月香港VPS[主机]
- 景文互联年终特惠:日本/香港/美国VPS全场7折+送内存,充1000送3日本VPS[主机]
- anyhk:香港HGC/WTT/HKT线路、台湾HiNet线路NAT套餐香港VPS[主机]
- ERP库存管理系统HTML5模板 - DreamsPOS全球[VPS测评]
- 亿速云“双11”上云狂欢大促 高防云服务器、裸金属服务器优惠套餐全球[VPS测评]
- YYYHost:4核4G香港cn2vps,20G SSD/3Mbps不限香港VPS[主机]
转载请注明原文地址:http://140.238.13.167:12355/read-73522.html











