西部数码主机 | 阿里云主机| 虚拟主机 | 服务器 | 返回乐道官网
当前位置: 主页 > php教程 > dedecms教程 >

DedeCMS在{dede:channel}标签前加序列号

时间:2016-03-14 00:06来源: 作者: 点击:
在DedeCMS网站导航中都会添加一些样式,这样能让导航看起来很美观大方,但是{dede:channel}标签是不能修改的,想要有一个好看的样式效果,还要修改一些标签。 默认的{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); 

(责任编辑:好模板)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
热点内容