dede的频道只有循环系统一次。因此必须改动 织梦cms企业网站建设好织梦cms网编在5.7小试验了一下能够用。 改动文档:\include\taglib文件目录下的channel.lib.php,请将下列编码所有拷贝更换
dede的频道只有循环系统一次。因此必须改动 织梦cms企业网站建设好织梦cms网编在5.7小试验了一下能够用。 改动文档:\include\taglib文件目录下的channel.lib.php,请将下列编码所有拷贝更换所述文档。 下列为引入的內容: ?php function lib_channel($ctag,$refObj) { global...

dede的频道只有循环系统一次。因此必须改动
织梦cms企业网站建设好织梦cms网编在5.7小试验了一下能够用。
改动文档:\include\taglib文件目录下的channel.lib.php,请将下列编码所有拷贝更换所述文档。
下列为引入的內容:
?php
function lib_channel( $ctag, $refObj)
global $_sys_globals,$envs,$dsql;
$attlist = typeid|0,reid|0,row|100,col|1,type|son,currentstyle|
FillAttsDefault($ctag- 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 .= dl \r\n
for($j=0;$j $col;$j++)
{
if($col 1) $likeType .= dd \r\n
if($row=$dsql- GetArray())
{
$row[ sonids ] = $row[ rel ] =
if($needRel)
{
$row[ sonids ] = GetSonIds($row[ id ], 0, false);
if($row[ sonids ]== ) $row[ rel ] =
else $row[ rel ] = rel= dropmenu{$row[ id ]}
}
//解决平级频道中,当今频道的款式
if( ($row[ id ]==$typeid || ($topid==$row[ id ] $type== top ) ) $currentstyle!= )
{
if($currentstyle!= )
{
$linkOkstr = $currentstyle;
$row[ typelink ] = GetOneTypeUrlA($row);
$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);
$likeType .= $linkOkstr;
}
}else
{
$row[ typelink ] = $row[ typeurl ] = GetOneTypeUrlA($row);
if(is_array($dtp2- CTags))
{
foreach($dtp2- CTags as $tagid= $ctag){
if(isset($row[$ctag- GetName()]))
{
$dtp2- Assign($tagid,$row[$ctag- GetName()]);
}
elseif (preg_match( /^sonchannel[0-9]*$/ ,$ctag- GetName()))
{
$dtp2- Assign($tagid,lib_channel_son($ctag,$row[ id ],$dsql2));
}
}
}
$likeType .= $dtp2- GetResult();
}
}
if($col 1) $likeType .= /dd \r\n
$GLOBALS[ autoindex ]++;
}//Loop Col
if($col 1)
{
$i += $col - 1;
$likeType .= /dl \r\n
}
}//Loop for $i
reset($dsql2);
$dsql- FreeResult();
return $likeType;
function lib_channel_son($ctag,$typeid = 0,$dsql2)
$attlist = row|100,col|1,currentstyle|
FillAttsDefault($ctag- CAttribute- Items,$attlist);
extract($ctag- CAttribute- Items, EXTR_SKIP);
$innertext = $ctag- GetInnerText();
$dsql3 = clone $dsql2;
$likeType =
//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
//And id $typeid
$dtp2 = new DedeTagParse();
$dtp2- SetNameSpace( field , [ , ]
$dtp2- LoadSource($innertext);
$dsql2- SetQuery($sql);
$dsql2- Execute();
$line = $row;
for($i=0;$i $line;$i++)
{
if($col 1) $likeType .= dl \r\n
for($j=0;$j $col;$j++)
{
if($col 1) $likeType .= dd \r\n
if($row=$dsql2- GetArray())
{
$row[ typelink ] = $row[ typeurl ] = GetOneTypeUrlA($row);
if(is_array($dtp2- CTags))
{
foreach($dtp2- CTags as $tagid= $ctag){
if(isset($row[$ctag- GetName()]))
{
$dtp2- Assign($tagid,$row[$ctag- GetName()]);
}
elseif (preg_match( /^sonchannel[0-9]*$/ ,$ctag- GetName()))
{
$dtp2- Assign($tagid,lib_channel_son($ctag,$row[ id ],$dsql3));
}
}
}
$likeType .= $dtp2- GetResult();
}
if($col 1) $likeType .= /dd \r\n
}//Loop Col
if($col 1)
{
$i += $col - 1;
$likeType .= /dl \r\n
}
}//Loop for $i
reset($dsql3);
$dsql2- FreeResult();
return $likeType;
模版启用 [field:sonchannel0] [/field:sonchannel0] 这一是用于取子频道用到(应用[sonchannel+数据] 做为标识名是以便避免嵌套循环的情况下没法恰当分析标识)
这一的功效便是如果你的频道有许多子频道 无尽等级分类的情况下便捷你取子频道的
{dede:channel type= son typeid= 22 }
[field:typename/]
ul
[field:sonchannel0]
li a href= [field:typelink/] [field:typename/] /a /li
[field:sonchannel1]
li a href= [field:typelink/] ---[field:typename/] /a /li
[field:sonchannel2]
li a href= [field:typelink/] ===[field:typename/] /a /li
[field:sonchannel3]
li a href= [field:typelink/] ===[field:typename/] /a /li
[/field:sonchannel3]
[/field:sonchannel2]
[/field:sonchannel1]
[/field:sonchannel0]
/ul
{/dede:channel}
dedecms模版,dedecms公司模版,dedecms新闻资讯模版,高档HTML5响应式模版,dedecms手机上模版,织梦cms模版实例教程,网站模版,网页页面模版,完全免费网页页面模版