在使用织梦dedecms做站点开发的时候,经常会遇到这样一种情况,在一些标签里还需要嵌套其他标签,但是织梦系统一般不支持这样的调用,我们该如何实现这样的要求呢,举例说明代码如下:
{dede:listpagesize='6'}
<li><ahref="/plus/jobs.php?lang={dede:global.user_lang/}&jobid=[field:id/]">[field:jobname/]</a></li>
{/dede:list}
当运行的时候,发现{dede:global.user_lang/}居然原封不动的被展示了出来而未被解析,361源码的小编很纳闷,于是去网上搜了有关DEDECMS不能嵌套标签的解决办法。百度还真是伟大,但是比较乱,最好小编只能自己总结出一下2个方法,供大家做参考。
方案一:
<!–在标签之前,先用JS获取标签中需要得到的内容–>
<script type="text/javascript">
functionget_user_lang(){document.write("{dede:global.user_lang/}");}
</script>
是不是感觉怪怪的,哈哈,怪是怪了点,但是还是有用的。
{dede:listpagesize=’6′}
<!–然后在标签中调用该JS函数把内容给显示出来–>
<li><ahref="/plus/jobs.php?lang=<scripttype="text/javascript">get_user_lang();</script>&jobid=[field:id/]">[field:jobname/]</a></li>
{/dede:list}
显然,这种办法肯定不是我要的,因为该方法不仅复杂,而且不容易维护,更重要的是与我尽量的坚持行为和结构分离的习惯相悖,于是又在网上搜了搜,结果发现了更加方便的解决办法,即把{dede:global.user_lang/}更改成[field:global.user_lang/]。
方案二:
代码如下:
{dede:listpagesize=’6′}
<li><ahref="/plus/jobs.php?lang=[field:global.user_lang/]&jobid=[field:id/]">[field:jobname/]</a></li>
{/dede:list}
是不是很简单呢,该方法不仅简单,而且容易维护,也符合结构和行为分离的良好习惯,当然,适用其他标签或者在DEDECMS中也是适用的。
这样的方法,很多时候是比较适应的,小伙伴最好能学会举一反三,那样以后开发和运用的时候就比较方便了。
以上就是织梦dedecms标签不能被嵌套怎么办的全部内容,希望对大家的学习和解决疑问有所帮助,也希望大家多多支持武林网。新闻热点
疑难解答