本文介绍了织梦dedecms怎么自定义递归函数调用所有栏目,解决办法:打开这个文件extend.func.php,添加教程给出的代码,然后使用新的调用标签{dede:global.getalltype function= getalltype() },就可以了。
织梦dedecms怎么自定义递归函数调用所有栏目?一起来看看解决办法。
先来看效果图:
然后看实现代码:
在织梦include/extend.func.php这个文件后面添加如下代码:
/** * 取出所有分类 * @param
int $channel 频道ID * @return string * 调用{dede:global.getalltype function='getalltype()'/} */ function getalltype($channel=0,$line=10) {
$line = empty($line) ? 10 : $line;
global $dsql,$result;
$dsql->SetQuery("SELECT id,typename,typenamedir,typelitpic,typedir,isdefault,
ispart,defaultname,namerule2,moresite,siteurl,sitepath FROM `blog_arctype` WHERE reid='$channel' And ishidden<>1 order by sortrank asc limit 0, $line ");
$dsql->Execute($channel);
if($dsql->GetTotalRow($channel)>0)
{
$result .= "<ul>\r\n";
while($row = $dsql->GetArray($channel))
{
$id = $row['id'];
$typename = $row['typename'];
$typelink = GetOneTypeUrlA($row);
$result .= " <li>\r\n";
$result .= "
<a href='{$typelink}' target='_blank'>{$typename}</a>\r\n";
getalltype($id,$line);
$result .= " </li>\r\n";
}
$result .= "</ul>\r\n";
}
return $result; }
在需要的位置用标签:
{dede:global.getalltype function='getalltype()'/}
上面就是织梦调用所有栏目的介绍,若有疑问可以找小编进一步探讨交流~