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

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

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

{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) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

小U源码 织梦学院 织梦怎么调用顶级栏目以及下面的二级栏目 https://xuym.com/720030.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务