13046685510

易优CMS(eyoucms)if条件判断,实现两个栏目关联

我们最近为客户做了一个易优cms的二次开发,是基于以上的判断条件进行制作。功能需求是:在“案例展示”栏目中的每个案例详情页底部,展现与该案例相关的“工程服务”项目,每个工程服务项目中还分多种工程(也就是二级分类),所以在案例底部是列表形式展示相关的工程服务。


参考语法:


{eyou:if condition='($eyou.field.has_children > 0)'}
当前栏目列表有下级栏目
{eyou:else /}
当前栏目里诶包没有下级栏目
{/eyou:if}


说明:condition=' ' //原生php语法条件判断


-------------------------------示例1--------------------------------


描述:多层次判断


{eyou:if condition='($eyou.field.has_children == 1)'}
  当前栏目列表的栏目ID有1个下级栏目
{eyou:elseif condition='($eyou.field.has_children == 2)' /}
  当前栏目列表的栏目ID有2个下级栏目
{eyou:else /}
  当前栏目列表的栏目ID有N个下级栏目
{/eyou:if}


-------------------------------示例2--------------------------------


描述:if标签之间嵌套


{eyou:if condition='($eyou.field.has_children > 0)'}
  {eyou:if condition='($eyou.field.has_children == 1)'}
    当前栏目列表的栏目ID有1个下级栏目
  {eyou:elseif condition='($eyou.field.has_children == 2)' /}
    当前栏目列表的栏目ID有2个下级栏目
  {eyou:else /}
    当前栏目列表的栏目ID有N个下级栏目
  {/eyou:if}
{/eyou:if}


实现思路:案例是文章模型,所以在文章模型中,创建内容字段标题,比如叫做“服务关联”,创建字段“jiejue”,字段类型为“多选项”。将默认的工程服务项目,一次输入到默认值中用半角逗号隔开,比如:“防水工程,防腐工程,保温工程,堵漏工程”(这四个工程,正好对应“工程服务”中的项目)。最后指定栏目“案例展示”。


在后台的案例展示中,将每个案例编辑页中,勾选相对应的工程。可以多选。然后在“案例展示”的详情页模板:view_article.htm中,需要展示相关的工程服务项目的位置,添加如下代码:

 {eyou:diyfield type='checkbox' id='jiejue' name='$eyou.field.jiejue'}
              {$jiejue.value}
              
              {eyou:if condition='($jiejue.value=="防水工程")'}
                    {eyou:arclist typeid='10' infolen='10' rderby='now' titlelen='10' row='6'}
                    <li><a href=""> <a href="{$field.arcurl}">
                      <div class="pimg"><img src="{$field.litpic}"></div>
                      </a>
                      <p>{$field.title}</p>
                      </a>
                    </li>
                    {/eyou:arclist}
              {eyou:elseif condition='($jiejue.value=="防腐工程")'}
                	{eyou:arclist typeid='11' infolen='10' rderby='now' titlelen='10' row='6'}
                    <li><a href=""> <a href="{$field.arcurl}">
                      <div class="pimg"><img src="{$field.litpic}"></div>
                      </a>
                      <p>{$field.title}</p>
                      </a>
                    </li>
                    {/eyou:arclist}
              {eyou:elseif condition='($jiejue.value=="保温工程")'}
                	{eyou:arclist typeid='12' infolen='10' rderby='now' titlelen='10' row='6'}
                    <li><a href=""> <a href="{$field.arcurl}">
                      <div class="pimg"><img src="{$field.litpic}"></div>
                      </a>
                      <p>{$field.title}</p>
                      </a>
                    </li>
                    {/eyou:arclist}                    
              {eyou:elseif condition='($jiejue.value=="堵漏工程")'}
                	{eyou:arclist typeid='13' infolen='10' rderby='now' titlelen='10' row='6'}
                    <li><a href=""> <a href="{$field.arcurl}">
                      <div class="pimg"><img src="{$field.litpic}"></div>
                      </a>
                      <p>{$field.title}</p>
                      </a>
                    </li>
                    {/eyou:arclist}
         <!-- {eyou:else /}  -->
              {/eyou:if}
        {/eyou:diyfield}


代码说明:新建的字段叫做jiejue,他的值分别对应不同的typeid。比如jiejue是“防水工程”,对应的防水工程栏目的typeid是10。所以经过以上的条件判断,最终实现了需要的功能。并且是支持多选的。


以上就是我们针对易优cms实现的一个小小功能。如果有快速建网站的需求,找锦技信息科技哦!

7x24小时服务专线 130-4668-5510
官方微信 关闭