织梦调用四级栏目
浏览次数:596 来源:郑州网站建设 作者:郑州网站制作 标签:
内容摘要:织梦调用四级子栏目,首先需要修改文件:include aglib目录下的channel.lib.php,请将以下代码全部复制替换上述文件,需要注意的是可能会出现无法使用栏目当前样式,可用以下方式解决:
织梦调用四级子栏目,首先需要修改文件:include aglib目录下的channel.lib.php,请将以下代码全部复制替换上述文件:
2、在模板中调用实例:
需要注意的是可能会出现无法使用栏目当前样式,可用以下方式解决:
1、在后台系统设置→其它选项→模板引擎禁用标签:把PHP去掉。
2、在当前页面增加全局变量,加入以下代码
3、在需要增加当前样式的地方用runphp的方式增加类名,li为栏目标签循环部分,这样就可以给当前栏目增加一个on的类名,无论有几级栏目都可以在循环地方使用:
CAttribute->Items,$attlist);
extract($ctag->CAttribute->Items, EXTR_SKIP);
$innertext = $ctag->GetInnerText();
$cacheid = trim($cacheid);
if($cacheid !='') {
$likeType = GetCacheBlock($cacheid);
if($likeType != '') return $likeType;
}
$reid = 0;
$topid = 0;
if(empty($typeid) && $envs['typeid']!=0)
{
$typeid = $envs['typeid'];
$reid = $envs['reid'];
}else{
$reid=0;
}
if($type==''||$type=='sun') $type="son";
if($innertext=='') $innertext = GetSysTemplets("channel_list.htm");
if($reid==0 && $typeid>0)
{
$dbrow = $dsql->GetOne("Select reid From dede_arctype where id='$typeid' ");
if(is_array($dbrow)) $reid = $dbrow['reid'];
}
$likeType = '';
if($type=='top')
{
$sql = "Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,description
From dede_arctype where reid=0 And ishidden<>1 order by sortrank asc limit 0,$row";
}
else if($type=="son")
{
//if($_sys_globals['typeid']>0) $typeid = $_sys_globals['typeid'];
if($typeid==0) {
return '';
}
$sql = "Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,description
From dede_arctype where reid='$typeid' And ishidden<>1 order by sortrank asc limit 0,$row";
}
else if($type=="self")
{
if($reid==0) {
return '';
}
$sql = "Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,description
From `dede_arctype` where reid='$reid' And ishidden<>1 order by sortrank asc limit 0,$row";
}
//And id<>'$typeid'
$needRel = false;
$dtp2 = new DedeTagParse();
$dtp2->SetNameSpace("field","[","]");
$dtp2->LoadSource($innertext);
$dsql2 = clone $dsql;
$dsql->SetQuery($sql);
$dsql->Execute();
$line = $row;
//检查是否有子栏目,并返回rel提示(用于二级菜单)
if(ereg(':rel', $innertext)) $needRel = true;
if(empty($sql)) return '';
$dsql->SetQuery($sql);
$dsql->Execute();
$totalRow = $dsql->GetTotalRow();
$GLOBALS['autoindex'] = 0;
for($i=0;$i < $line;$i++)
{
if($col>1) $likeType .= "
|
2、在模板中调用实例:
{dede:channel type='son' typeid='3'}
[field:typename/]
|
需要注意的是可能会出现无法使用栏目当前样式,可用以下方式解决:
1、在后台系统设置→其它选项→模板引擎禁用标签:把PHP去掉。
2、在当前页面增加全局变量,加入以下代码
{dede:php}$GLOBALS['thisid'] = intval($refObj->Fields['id']);{/dede:php}
|
3、在需要增加当前样式的地方用runphp的方式增加类名,li为栏目标签循环部分,这样就可以给当前栏目增加一个on的类名,无论有几级栏目都可以在循环地方使用:
|
|
网站文章纠正或建议请致电:186-9583-3851 或邮箱联系:136109548@qq.com

加个好友,随时问