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 -->
当然,也可以通过多搞一个分类模板,就是比较麻烦。