织梦dedecms怎么借助arclist实现当前文章高亮

92建站   2021-05-12   收藏本文

本文介绍了织梦dedecms怎么借助arclist实现当前文章高亮,解决思路:打开这个文件arclist.lib.php,在里找到 增加对分页内容的处理,然后添加教程给出的代码$currentstyle = $ctag->GetAtt( currentstyle );,就可以了。

织梦dedecms怎么借助arclist实现当前文章高亮?例如,一些帮助和解释页面可以由栏目或文章制作。考虑到文章写作更方便,你也可以使用定制的字段,这比栏目灵活得多。栏目更容易处理当前栏目的亮度问题。

处理办法:

{dede:channel typeid='' row='' currentstyle="<li class="on"><a href='~typelink~'>~typename~</a></li>"}

<li><a href="[field:typeurl/]">[field:title/]</li>

{/dede:channel}

注意typelink和typeurl的写法。如果用文章来做的话,就需要修改几个地方,网上有些错误的写法,笔者亲自测试过,修正后分享给大家。

打开 include/taglib/arclist.lib.php

找到

//增加对分页内容的处理

在这段前加入

$currentstyle = $ctag->GetAtt('currentstyle');

在大概135行,找到

$tagid,$pagesize,$isweight

增加 ,$currentstyle  也就是

$tagid,$pagesize,$isweight,$currentstyle

大概在170行,找到

$isweight='N'

后面增加

,$currentstyle=''

在519行,找到

$row['textlink'] = "<a href='".$row['filename']."'>".$row['title']."</a>";

后面增加

//by www.92jzh.com

if($currentstyle && $row['id']==$arcid){

$currentstyle = str_replace('~typelink~', $row['filename'], $currentstyle);

$row['currentstyle'] = str_replace('~typename~', $row['title'], $currentstyle);

}

模板调用,具体样式请自行修改

{dede:arclist currentstyle="<li class='on' ><a href='~typelink~'>~typename~</a></li>"}

[field:array runphp='yes']

if(@me['currentstyle']){

@me = @me['currentstyle'];

}else{

@me = "<li><a href='{@me['arcurl']}'>{@me['title']}</a></li>";

}

[/field:array]

{/dede:arclist}

上面就是织梦当前文章高亮的介绍,若有疑问可以找小编进一步探讨交流~

展开