织梦DedeCMS在{dede:channel}标签前加序列号的⽅法织梦新闻博客网站模板
我们在制作织梦模板的时候,经常想实现这样的⼀个样式功能:在DedeCMS⽹站导航中都会添加⼀些样式,这样能让导航看起来很美观⼤⽅。但是{dede:channel}标签是不能修改的,想要有⼀个好看的样式效果,还要修改⼀些标签。
默认的{dede:channel}调⽤⽅法:
{dede:channel type='top' row='8'}
<a href="[field:typeurl/]" [field:rel/] title="[field:typename/]" class="dh1">[field:typename/]</a>
{/dede:channel}
通过修改,改成下⾯的样式:
{dede:channel type='top' row='8' line='2'}
<a href="[field:typeurl/]" title="[field:typename/]" class="dh[field:line/]" [field:rel/]></a>
{/dede:channel}
修改步骤如下:
打开⽂件include/taglib/channel.lib.php,
$attlist = "typeid|0,reid|0,row|100,col|1,type|son,currentstyle|,cacheid|";
修改成
$attlist = "typeid|0,reid|0,row|100,col|1,type|son,currentstyle|,cacheid|,line|1";
//|后⾯的1,代表初始值
在第9⾏附近追加如下代码:
//默认属性⾥设置的⾏数
$default_line = $ctag->CAttribute->Items["line"];
把下⾯代码
$row['sonids'] = $row['rel'] = '';
修改成
$row['sonids'] = $row['rel'] = ''; $row['line'] = $default_line+$i;
如果要使⽤currentstyle样式,即当前栏⽬样式,则必修将刚才的"line"字段,追加到下⾯代码后⾯
$linkOkstr = str_replace("~rel~",$row['rel'],$linkOkstr);
$linkOkstr = str_replace("~id~",$row['id'],$linkOkstr);
$linkOkstr = str_replace("~typelink~",$row['typelink'],$linkOkstr);
$linkOkstr = str_replace("~typename~",$row['typename'],$linkOkstr);
$linkOkstr = str_replace("~line~",$row['line'],$linkOkstr);
完成。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。