DedeCMS子栏目调用currentstyle属性不支持typeid的如何解决方案

日落沧海看夕阳,万丈霞光谱辉煌。轻叹美景难留住,只因月色要锋芒!你在桥上看风景,看风景的人在桥下看你。你只知道自己吃了韭菜盒子,却不知道别人在盒子里还加了鸡蛋。

我们在使用织梦建站的时候,导航栏经常会用到channel标签来调子栏目,但有的时候需要调用指定栏目的子栏目,而且还需要配合currentstyle属性做当前字栏目高亮的功能,但是织梦默认情况下是currentstyle对typeid是无效的,此时就需要做一下修改,来让它支持typeid。

修改include/taglib/channel.lib.php,找到代码:

	
	if( ($row['id']==$typeid || ($topid==$row['id'] && $type=='top') ) && $currentstyle!='' )
	

修改为:

	
	if( ( $row['id']== $refObj->TypeLink->TypeInfos['id'] || ($topid==$row['id'] && $type=='top') ) && $currentstyle!='' )
	

调用标签举例:

	
	{dede:channel typeid ='3' type ='son' currentstyle="<li><a rel="nofollow noopener noreferrer" href='~typelink~' class='on'>~typename~</a></li>"}
	<li><a rel="nofollow noopener noreferrer" href="[field:typelink/]" title="[field:typename/]">[field:typename/]</a></li>
	{/dede:channel}
	

效果:当前栏目下的列表会添加一个class="on"属性,可以配合css样式做当前栏目高亮效果,如图:

以上就是DedeCMS子栏目调用currentstyle属性不支持typeid的如何解决方案。励志是给人快乐,激励是给人痛苦。更多关于DedeCMS子栏目调用currentstyle属性不支持typeid的如何解决方案请关注haodaima.com其它相关文章!

标签: 不支持 DedeCMS