织梦dedecms同时调用一级分类、二…
来源:互联网 发布:spring面向切面编程 编辑:程序博客网 时间:2024/06/11 00:29
一、如何才能将DEDECMS分类信息中所有的栏目,包括一级和二级全部都调用出来呢。其实,通过dedecms的channelartilist 标签是完全可以实现的,下面就是调用代码:
{dede:channelartlisttypeid='1,10,24,35,51,56' } //手动把一级栏目的id写好{dede:type}[field:typename/]{/dede:type}
- {dede:channel
type='son' noself='yes'} - [field:typename/]
- {/dede:channel}
{/dede:channelartlist}
通过上面的标签可以调用出所有的栏目
二。直接上图:
调用方法:
{dede:channelartlisttypeid='2'}{dede:field name='typename'/}{dede:channel type='son' noself='yes'}[field:typename/]{/dede:channel}{/dede:channelartlist}
此方法直接使用会出现一个问题:当其中一个分类没有子分类的时候,会在其子分类的位置显示出所有的一级分类
解决办法:去掉include/taglib/channel.lib.php中以下内容即可解决
//如果用子栏目模式,当没有子栏目时显示同级栏目if($type=='son'&& $reid!=0 && $totalRow==0){$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepathFROM `#@__arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line ";$dsql->SetQuery($sql);$dsql->Execute();}
—————————————————————————————————————————————————————————以下方法在5.6版本适用,后来升级到5.7V后发现用不了,具体不知道啥原因,有兴趣的朋友可以研究一下:
在\include\channelunit.func.php文件底部添加如下代码:
//树形栏目补充,获取二级,san级,四级栏目列表functiongetProductTree($typeid){$linkList = "";$dsql = new DedeSql(false);$dsql->SetQuery("select ID,typedir,typename,isdefault from #@__arctype where reID = '$typeid' order by sortrank");$dsql->Execute();while($row=$dsql->GetObject()){$typelink = GetTypeUrl($row->id,MfTypedir($row->typedir),$row->isdefault,$row->defaultname,$row->ispart,$row->namerule2,$row->moresite,$row->siteurl,$row->sitepath);$linkList .= "\ntype\">".$row->typename."\n\n";$linkList .= getSonClass($row->ID);}$dsql->Close();return $linkList;}//获得小类栏目链接function getSonClass($parentid){$linkList = "";$dsql = new DedeSql(false);$dsql->SetQuery("Select ID,typedir,typename,isdefault From #@__arctype where reID='$parentid' order by sortrank");$dsql->Execute($parentid);while($row=$dsql->GetObject($parentid)){$typelink = GetTypeUrl($row->id,MfTypedir($row->typedir),$row->isdefault,$row->defaultname,$row->ispart,$row->namerule2,$row->moresite,$row->siteurl,$row->sitepath);$linkList .= "".$row->typename."\n";$linkList .= getSonClass2($row->ID);}return $linkList;}function getSonClass2($parentid){$linkList = "";$dsql = new DedeSql(false);$dsql->SetQuery("Select ID,typedir,typename,isdefault From #@__arctype where reID='$parentid' order by sortrank");$dsql->Execute($parentid);while($row=$dsql->GetObject($parentid)){$typelink = GetTypeUrl($row->id,MfTypedir($row->typedir),$row->isdefault,$row->defaultname,$row->ispart,$row->namerule2,$row->moresite,$row->siteurl,$row->sitepath);$linkList .= "".$row->typename."\n";$linkList .= getSonClass3($row->ID);}return $linkList;}function getSonClass3($parentid){$linkList = "";$dsql = new DedeSql(false);$dsql->SetQuery("Select ID,typedir,typename,isdefault From #@__arctype where reID='$parentid' order by sortrank");$dsql->Execute($parentid);while($row=$dsql->GetObject($parentid)){$typelink = GetTypeUrl($row->id,MfTypedir($row->typedir),$row->isdefault,$row->defaultname,$row->ispart,$row->namerule2,$row->moresite,$row->siteurl,$row->sitepath);$linkList .= "".$row->typename."\n";}return $linkList;}
在模板里用
{dede:channel
调用即可。这里getProductTree(2)中的
0 0
- 织梦dedecms同时调用一级分类、二…
- 织梦dedecms调用一级、二级栏目方法
- dedecms如何调用一级栏目并列表
- ECSHOP调用商品一级分类
- aspcms 一级分类 二级分类调用
- dedecms 同时调用top和二级导航
- DedeCMS----首页调用栏目、分类信息
- DedeCMS---首页调用行业的所有分类
- dedecms 会员信息的调用和分类
- DedeCMS分类信息怎么调用到首页
- dedecms 调用栏目(分类)的文章总数
- dede 一级栏目和二级栏目同时调用标签
- 织梦同时调用一级栏目和二级栏目方法
- dedecms 文章列表和频道列表同时调用
- 织梦dedecms系统首页调用内容分类信息模型联动类别的方法
- 织梦dedecms系统首页调用分类信息联动类别(地区,类型等)的方法如下
- dedecms如何调用分类信息的当前地区名称
- DedeCMS 友情链接按分类网站类型调用的方法
- Dedecms当前栏目高亮完美处理办法…
- dedecms织梦验证码“图像因其本身有…
- {dede:global.cfg_templets_skin/}…
- dedecms后台验证码显示问题的四种…
- 织梦网站底部的Power by&nbsp…
- 织梦dedecms同时调用一级分类、二…
- Java之toString()方法详解
- 如何使用DW工具给图片添加热点
- 织梦DedeCms文章标题字数限制的解…
- codevs1015
- 排序
- 项目管理之我见
- 053第484题
- 实例变量可见度及方法、自定义初始化方法、实例化方法、类方法、便利构造器