本篇文章给大家谈谈DedeCMS循环调用二级栏目及三级栏目的办法,以及dedecms二级导航栏的知识点,同时本文还将给你拓展DedeCms列表页内容页栏目高亮和当前栏目调用二三级栏目、dedecms同
本篇文章给大家谈谈DedeCMS循环调用二级栏目及三级栏目的办法,以及dedecms二级导航栏的知识点,同时本文还将给你拓展DedeCms列表页内容页栏目高亮和当前栏目调用二三级栏目、dedecms同时嵌套调用二级三级栏目的方法、dedecms嵌套循环调用顶级栏目和子栏目、dedecms循环调用一级和二级栏目,没有子栏目时显示同级栏目等相关知识,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:- DedeCMS循环调用二级栏目及三级栏目的办法(dedecms二级导航栏)
- DedeCms列表页内容页栏目高亮和当前栏目调用二三级栏目
- dedecms同时嵌套调用二级三级栏目的方法
- dedecms嵌套循环调用顶级栏目和子栏目
- dedecms循环调用一级和二级栏目,没有子栏目时显示同级栏目
DedeCMS循环调用二级栏目及三级栏目的办法(dedecms二级导航栏)
对于DEDECMS的二级栏目还有子栏目的需要循环调用的可以通过使用下面的代码来调用:
{dede:channelartlist typeid=3 }
<dd>
<dl>
<dt><a href=http://www.dede58.com/a/dedejq/”{dede:field name=’typeurl’/}”>{dede:field name=’typename’/}</a></dt>
<dd>
<ul>
{dede:sql sql=’Select * from `dede_arctype` where reid=~id~ ORDER BY id’}
<li><a href=http://www.dede58.com/a/dedejq/”[field:typedir function=”cn_substr(@me,200,9) ” /]”>[field:typename/]</a></li>
{/dede:sql}
</ul>
</dd>
</dl>
</dd>
{/dede:channelartlist}
这样就可以循环调用出二级栏目以及三级栏目的所有栏目了,效果如下:
DedeCms列表页内容页栏目高亮和当前栏目调用二三级栏目
在处理企业站的时候,经常发现要调用二三级栏目栏目,且需要高亮显示,具体实现方法如下。
1、打开 \include\taglib\channelartlist.lib.PHP 找到
改成
TypeLink->TypeInfos['id']) ? GetTopid($refObj->TypeLink->TypeInfos['id']) : 0 ); $tpsql = " reid='$typeid' AND ishidden<>1 "; } else { $tpsql = " reid='$typeid' AND ispart<>2 AND ishidden<>1 "; }
2、打开 \include\taglib\channel.lib.PHP 找到
改成
3、后台-系统-其它选项 模板引擎禁用标签 去掉PHP
调用代码如下:
-
{dede:PHP}
$GLOBALS['thisid'] = intval($refObj->Fields['typeid']);
$GLOBALS['reid'] = intval($refObj->Fields['reid']);
$GLOBALS['topid'] = intval($refObj->Fields['topid']);
{/dede:PHP}
{dede:channelartlist type=son}
- {dede:field.typename/}
-
{dede:channel type=son noself=yes}
- [field:typename/] {/dede:channel}
至此,全部完成。
dedecms同时嵌套调用二级三级栏目的方法
如下:
先看后台的栏目:


dedecms嵌套循环调用顶级栏目和子栏目
《Dedecms嵌套循环调用顶级栏目和子栏目》要点:
本文介绍了Dedecms嵌套循环调用顶级栏目和子栏目,希望对您有用。如果有疑问,可以联系我们。
<div>
<ul>
{dede:channelartlist row=6}只能首页用,子页要用改成{dede:channelartlist row=6 typeid='top'}
<li>
<h3><a href='{dede:field name='typeurl'/}'>{dede:field name='typename'/}</a>></h3>
<ul>
{dede:channel type='son' noself='true'}
<li><a href='[field:typelink/]'>[field:typename/]</a></li>
{/dede:channel}
</ul>
</li>
{/dede:channelartlist}
</ul>
</div>
备注:如果你想控制顶级栏目的个数,请变动上面第一行红色的row参数
这样循环,如果栏目属性是外部链接就不会输出,如果必要显示外部链接,5.7可以找include/taglib/channelartlist.lib.PHP第67行左右去掉红色代码
$tpsql = " reid=0 AND ispart<>2 AND ishidden<>1 AND channeltype>0 ";
改成
$tpsql = " reid=0 AND ishidden<>1 AND channeltype>0 ";
去掉 {cmspath} 可以使用如下办法:
1、执行sql: update dede_arctype set typedir=replace(typeidr,'{cmspath}','');
2、改动文件 catalog_add.PHP 找到 $true_typedir = str_replace("{cmspath}",$cfg_cmspath,$typedir); 改为 $true_typedir = str_replace("",$typedir);
《Dedecms嵌套循环调用顶级栏目和子栏目》是否对您有启发,欢迎查看更多与《Dedecms嵌套循环调用顶级栏目和子栏目》相关教程,学精学透。小编PHP学院为您提供精彩教程。
dedecms循环调用一级和二级栏目,没有子栏目时显示同级栏目
Dedecms循环调用一级和二级栏目,代码如下:
{dede:channelartlist typeid='2'} <lihttps://www.jb51.cc/tag/irs/" target="_blank">irst"><a href="{dede:field name='typeurl'/}">{dede:field name='typename'/}</a></li> {dede:channel type='son' noself='yes'} <li><a href="[field:typelink/]">[field:typename/]</a></li> {/dede:channel} {/dede:channelartlist}
这时,当其中一个分类没有子分类的时候,会在其子分类的位置显示出所有的一级分类,没有子栏目时显示同级栏目,修改办法如下:
修改文件include/taglib/channel.lib.PHP,修改如下代码:
//如果用子栏目模式,当没有子栏目时显示同级栏目 https://www.360muye.cn
if($type=='son' && $reid!=0 && $totalRow==0) { $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath FROM `arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line "; $dsql->SetQuery($sql); $dsql->Execute(); }
通过上面的代码即可实现Dedecms织梦调用一级和二级栏目,转载请注明:耐力板
关于DedeCMS循环调用二级栏目及三级栏目的办法和dedecms二级导航栏的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于DedeCms列表页内容页栏目高亮和当前栏目调用二三级栏目、dedecms同时嵌套调用二级三级栏目的方法、dedecms嵌套循环调用顶级栏目和子栏目、dedecms循环调用一级和二级栏目,没有子栏目时显示同级栏目的相关知识,请在本站寻找。
本文标签: