eyoucms如何判断调用一级栏目和二级栏目的下级和同级显示问题
2022-08-04
有eyoucms的会员在官网问了一个问题,见链接:https://www.eyoucms.com/ask/list_1_0/10535.html,
说白了就是一二级同时在同一页面进行选择的时候,如果全都有二级的话,没问题,但如果有一些分类有二级而有些没有二级,那就会出现有错,我老早就知道并且用我自已的方法处理,只要是判断是否有二级,有就显示二级,没就只显示一级,而不是只有一级的时候,二级位置出现和一级一样的分类,相关例子:https://www.pooban.com/download/lists_436.html,代码如下:
<!-- 分类 begin -->
<div class="between-tree">
<div class="nav-m">
<!-- 一级分类 -->
<ul>
<li class="nav-head text-middle text-main">分类:</li>
<li class="nav-child">
<ul>
<li><a href="{$eyou.field.typeid|gettoptype=###,'typeurl'}" title="{$eyou.field.typeid|gettoptype=###,'typename'}" class=" {eyou:eq name='$eyou.field.typeid' value='$eyou.field.typeid|gettoptype=###,typeid'}active{/eyou:eq}">全部</a></li>
{eyou:channel type="first" currentstyle="active"}
{eyou:eq name='$eyou.field.grade' value='2'}
{eyou:type typeid='$eyou.field.typeid' id='field1'}
{eyou:eq name='$field1.parent_id' value='$field.id'}
{eyou:assign name='$field.currentstyle' value='active' /}
{/eyou:eq}
{/eyou:type}
{/eyou:eq}
<li><a href="{$field.typeurl}" title="{$field.typename}" class="{$field.currentstyle}">{$field.typename}</a></li>
{/eyou:channel}
<div class="clearfix"></div>
</ul>
</li>
<div class="clearfix"></div>
</ul>
<!-- 一级分类 -->
<!-- 二级分类可能1 -->
{eyou:if condition="($eyou.field.grade == '1'&&$eyou.field.has_children == '1')"}
<ul>
<li class="nav-head text-middle text-main">二级:</li>
<li class="nav-child">
<ul>
<li><a href="{$eyou.field.ptypeurl}" title="{$eyou.field.ptypename}" {eyou:eq name='$eyou.field.ptypeid' value='$eyou.field.ptypeid|gettoptype=###,typeid'}class="active"{/eyou:eq}>全部</a></li>
{eyou:channel type='sonself' currentstyle="active"}
<li>
<a href="{$field.typeurl}" title="{$field.typename}" class="{$field.currentstyle}">{$field.typename}</a>
</li>
{/eyou:channel}
<div class="clearfix"></div>
</ul>
</li>
<div class="clearfix"></div>
</ul>
{/eyou:if}
<!-- 二级分类可能1 -->
<!-- 二级分类可能2-->
{eyou:if condition="($eyou.field.grade == '2'&&$eyou.field.has_children == '0')"}
<ul>
<li class="nav-head text-middle text-main">二级:</li>
<li class="nav-child">
<ul>
<li><a href="{$eyou.field.ptypeurl}" title="{$eyou.field.ptypename}" {eyou:eq name='$eyou.field.ptypeid' value='$eyou.field.ptypeid|gettoptype=###,typeid'}class="active"{/eyou:eq}>全部</a></li>
{eyou:channel type='sonself' currentstyle="active"}
<li>
<a href="{$field.typeurl}" title="{$field.typename}" class="{$field.currentstyle}">{$field.typename}</a>
</li>
{/eyou:channel}
<div class="clearfix"></div>
</ul>
</li>
<div class="clearfix"></div>
</ul>
{/eyou:if}
<!-- 二级分类可能2-->
</div>
</div>
<!-- 分类 end -->当然,也可以通过多搞一个分类模板,就是比较麻烦。








