Freemark 中 自定义标签
?
? [@cms_infoCategory_FlagDirective count='3' recommend_flag='0' ]
[#if tag_pagination??]
[#list tag_pagination.list as m]
? ? ?<li><span class="img_l"><a href="/?${(m.org_code)!}" target="_blank">
? ? ? ? <img src="[#if m.org_logo??&&(m.org_logo?length>0)]${(m.org_logo)!}[#else]/${res}/no_picture.gif[/#if]"/> </a></span> ??
? ? ? <div><h1><a href="/?${(m.org_code)!}" target="_blank">${(m.org_name)!}</a><img src="/${res}/img/new.gif" alt="推荐"/></h1> <p>${((m.org_introduction)!)?substring(0,10)}...... <a href="/?${(m.org_code)!}" target="_blank">详细</a></p>
? ? ? <h2><Span>机构地址:${(m.org_address)!} </Span> ? ?<Span> 机构电话:${(m.org_phonenumber)!}</Span> </h2>
? ? ? </div>
? ? ? ?<div class="clear"></div>
? ? ?</li>
? ? ?[/#list]
? ? ?[/#if]
?[/@cms_infoCategory_FlagDirective ]
使用Freemarker内置函数substring()时不知何种原因在数据足够的情况下长度不能超过10个
但10个长度数量有不够 ,那如何解决长度不够问题??
?
方案:使用Freemarker中length 函数判断分别输出两种不同的结果显示:
[#if ( m.org_introduction)??length>66)]
? ? ? ? ?${ m.org_introduction)?[0..66]?default("...")}
[#else]
? ? ? ? ?${ m.org_introduction)??default("...")}
[/#if]
?