您好,欢迎来到织梦猫!
登录 | 注册
搜索
织梦猫模板交流群:织梦猫 织梦模板交流
当前位置: 主页 > 织梦教程 >

织梦调用顶级栏目以及下面的二级栏目

Dedemao 发表于 2013-07-09 10:43 | 查看: 0 | 回复:

有些时候需要调用顶级栏目以及下面的二级栏目,例如再做下拉菜单时。最简单的调用二级栏目的办法:




{dede:channelartlist typeid='top'}
<li><a href="{dede:field name='typeurl'/}" target="_self">{dede:field name='typename'/}</a>
<ul>
{dede:channel type='son' noself='yes'}
<li><a href="[field:typelink/]" target="_self">[field:typename/]</a></li>
{/dede:channel}
</ul>
</li>
{/dede:channelartlist}



有些时候需要做样式时,需要为dede:channelartlist 里的某个标签加上不同的css,例如下面的例子:



{dede:channelartlist typeid='top'}
<li><a href="{dede:field name='typeurl'/}" target="_self">{dede:field name='typename'/}</a>
<ul class="flyout level2 child{dede:global name='itemindex'/}">
{dede:channel type='son' noself='yes'}
<li><a href="[field:typelink/]" target="_self">[field:typename/]</a></li>
{/dede:channel}
</ul>
</li>
{/dede:channelartlist}



{dede:global name='itemindex'/}为在每次调用顶级栏目,自动递增。


更复杂的调用二级栏目的方式,要用dede:php标签,如下例:


<ul>
<li><a href="{dede:global.cfg_basehost/}">网站首页</a></li>
{dede:channelartlist typeid='top'}
{dede:php}
$thisid = $refObj->Fields['id'];
$dsql->SetQuery("Select * from `dede_arctype` where reid=".$thisid." ORDER BY sortrank");
$dsql->Execute();
$i=0;
while($arr = $dsql->getArray()){
$i = $i +1;
$str = implode(',',$arr);
if(!empty($str) && $i==1){
 echo '<li><div><dl><dt><img src="/img/item_top.jpg" width="89" height="11"></dt>'; 
}
echo '<dd><a href="/plus/list.php?tid='.$arr['id'].'">'.$arr['typename'].'</a></dd>';
}
if(!empty($str)) echo '</dl></div>';
if(empty($str)){
 echo '<li>';
}
{/dede:php}
<a href="{dede:field name='typeurl'/}" class='{dede:field.currentstyle/}'>{dede:field name='typename'/}</a>
 </li>
{/dede:channelartlist}
</ul>




这种方式虽然更复杂,但也更灵活。


随机筛选
说点什么吧
  • 最新评论
  • 总共0条评论

联系我们 | 关于我们 | 网友投稿 | 版权声明 | 广告服务 | | 网站地图 | TAG标签

版权声明:本站资源均来自互联网,如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

Copyright @ 2013-2016 织梦猫 版权所有  本站使用DEDECMS内核
蜀ICP备16029806号  

回顶部