最模板 - 外贸网站建设,外贸网站模板

最模板

当前位置: 首页 > 建站教程 > CMS教程 > DedeCMS教程 >

织梦dede:field标签如何实现嵌套,以及多个参数的处理

时间:2014-07-31 03:32来源:未知 作者:最模板zuimoban 点击:
{dede:field}标签有个很大的缺点就是实现不了嵌套,有时候样式中间有嵌套,这样怎么处理。最近工作上同事遇到了,我把解决的方法整理出来。 实例1: 我需要实现的是这样显示一个自

{dede:field}标签有个很大的缺点就是实现不了嵌套,有时候样式中间有嵌套,这样怎么处理。最近工作上同事遇到了,我把解决的方法整理出来。

实例1:

我需要实现的是这样显示一个自定义模型里面的标题,有就显示,没有读出来不显示,并且包含样式:

<li>1、<a href="#head1" name="head1-1">{dede:field.hehu_title1 /}</a></li>

如上:这样实现了调出标题,但是如果这个标题为空的时候,这一行前面的1也会显示出来,这样显然不是我们需要的,那怎么能动态控制乃?如下:

平时使用我们使用{dee:field name='hehu_title1' /}或{dede:field.hehu_title1/}就可以实现。但是现在我们应该如下:
{dede:field name='array' runphp='yes'}

 if (@me[hehu_title1] != ""){@me="<li>1、<a href='#head1' name='head1-1'>"="";}
{/dede:field}

这样才实现我们的功能,做了一个判断。

实例2:

例如需要有短标题就显示短标题、没有短标题就显示长标题:
{dede:field name='array'  runphp='yes'} if (@me['shorttitle']=='') @me=@me['title'];else @me=@me['shorttitle'];{/dede:field}

备注:此用法是我们需要同时处理两个或以上字段参数的时候,用这个就很方便!
 

edeCms Runphp 标签中调用其他变量的方法

我们都知道,在DedeCMS中是可以使用PHP的,常见的方法就是if else了,例如模板制作中,我们需要对来源和作者进行判断,如果为空,则提示:暂无或不详,样例:


{dede:field name='source' runphp='yes'}
if(@me == ""){

 @me = "";

}else{

 @me = "来源:".@me;

}
{/dede:field}


但是如果想在上边的代码中调用其他变量,怎么调用呢?今天下午烈火小编就遇到这个问题,在织梦官方论坛查找了一下,现在将方法公布如下,我们将变量写为通用:array,代码如下:


{dede:field name='array' runphp='yes'}

if(@me['source'] == ""){

 @me = "@me['其它变量']";

}else {

@me = "来源:".@me['source'];

}

{/dede:field} 

 

<small>演示:</small><span>{dede:field name='array' runphp='yes'} if(@me['url']=='')@me="暂无演示";else @me = "<a rel='nofollow' href='/demo/".@me['id']."' target='_blank'>查看演示</a>";{/dede:field}</span>
 
(责任编辑:最模板)
------分隔线----------------------------
栏目列表
推荐内容