dedecms 在页面上用if{}else{}语句判断,怎么给标签不同的链接?

卿柠 2017-07-28 11:55:41
原代码为:

{dede:channel type='son' noself='yes'}
<li><a href='[field:typelink/]'>[field:typename/]</a></li>
{/dede:channel}


想在循环出来的a标签中改变一个链接,当typename为aaa时,链接为:href="/a/aaa/1.html",添加了if判断,代码如下:

{dede:channel type='son' noself='yes'}
<li><a [field:typename runphp='yes'] if(@me=="aaa") @me="href='/a/aaa/1.html'"; else @me="href='[field:typelink/]'";[/field:typename]>[field:typename/]</a></li>
{/dede:channel}


这样写出来后,原来的链接就被原样输出了href='[field:typelink/]',
请问,原来的链接这里应该怎么写才会正确被翻译成链接?
...全文
396 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
hongmei85 2017-07-28
  • 打赏
  • 举报
回复
你搜下 dede array 看别人几种写法试下,
卿柠 2017-07-28
  • 打赏
  • 举报
回复
引用 1 楼 hongmei85 的回复:

{dede:channel type='son' noself='yes'}
<li><a href='[field:array runphp='yes']
if(@me['typename']=='aaa') {
@me = "/a/aaa/1.html";
} else {
@me = @me['typelink'];
}
[/field:array]'>[field:typename/]</a ></li>
{/dede:channel}



@me['typename']和@me['typelink']都取不到值,所以href的值一直都是空的。这个[field:array runphp='yes']的数据是取的谁的数据?
卿柠 2017-07-28
  • 打赏
  • 举报
回复
引用 1 楼 hongmei85 的回复:

{dede:channel type='son' noself='yes'}
          <li><a  href='[field:array runphp='yes']
	        if(@me['typename']=='aaa') {
	            @me = "/a/aaa/1.html";
	        } else {
	            @me = @me['typelink'];
	        }
	    [/field:array]'>[field:typename/]</a ></li>
 {/dede:channel}
不行,好像就没走进判断里,href为空
hongmei85 2017-07-28
  • 打赏
  • 举报
回复

{dede:channel type='son' noself='yes'}
          <li><a  href='[field:array runphp='yes']
	        if(@me['typename']=='aaa') {
	            @me = "/a/aaa/1.html";
	        } else {
	            @me = @me['typelink'];
	        }
	    [/field:array]'>[field:typename/]</a ></li>
 {/dede:channel}

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧