转载请标明是引用于 http://blog.csdn.net/chenyujing5678
欢迎拍砖!
参考文章: http://www.dedecms8.com/jc/1536.html
一、前言
如果你是做B2B类型的网站,几乎每个网站都把全部分类显示在首页,目前DEDE还没有一个标签能够调用这些分类的,但是强大的自定义函数还是能满足这个需求的。
如何调用全部的行业分类信息呢?
二、实现
废话不说,直接进入主题,首先在\include 建立一个inc_extend_function.php 。
这个文件都是放你自己写的自定义函数的,区别于官方写的,然后加入代码:
// 分类调用
function getfenlei(){
$dsql = new DedeSql();
$topsectors = $subsectors = array();
$dsql->setquery
("select id, name, reid from dede_sectors order by disorder desc,id asc");
$dsql->Execute();
while($row = $dsql->GetArray())
{
if($row['reid'] == 0){
$topsectors[] = $row;
}
else{
$subsectors[] = $row;
}
}
foreach($topsectors as $topsector){
$sectors[] = $topsector;
foreach($subsectors as $key => $subsector){
if($subsector['reid'] == $topsector['id']){
$sectors[] = $subsector;
unset($subsectors[$key]);
}
}
}
if($sectors){
$temp = 0;
foreach($sectors as secotr){
if($sector['reid'] == 0){
if($temp > 0){
$fenlei.= "/ul>\n\n";
}
$fenlei .="<ul id='fenleida'>\n";
$fenlei .="<li id='fenlaidat'><a href=\"/list-company-sectorid-$sector[id].html\">$sector[name]</a></li>\n";
$temp++;
}else{
$fenlei .= "<li id='fenleix'><a href=\"/list-company-sectorid2-$sector[id].html\">$sector[name]</a> | </li>\n";
}
}
$fenlie .= "</ul>\n";
}
return $fenlei;
}
然后在首页你需要调用的地方写上{dede:hotwords num='5' function='getfenlei(@me)'/}就可以了。
说明:
(1)函数中<ul id='fenleida'>以及<li id='fenlaidat'>等是我自己定义的CSS样式,你可以自己去修改;
(2)<a href=\"/list-company-sectorid-$sector[id].html\">,这些是链接地址,你可以把它链接到供应或求购等地方,你都可以自己去写,我这个是链接到黄页,
用了伪静态而已。
(3){dede:hotwords num='5' function='getfenlei(@me)'/}
这个目的是想调用这个函数,所以hotwords num='5'并不是调用热门关键词之类的,只是弄个摆设,没这个摆设可不行哦。