刚刚接触织梦,就从基础看起,希望大家不要见笑,多多鼓励啊 呵呵
在测试的时候发现静态模板类里面的
{dede:foreach array=”数组名”} [field:key/] [field:value/] {/dede:foreach}这本标签总不能正常使用,执行后总是返回 [field:key/] [field:value/] [field:key/] [field:value/] ….n个“[field:key/] [field:value/] ”而不是正在的数据,在网上搜了搜,结果大部分都是转载织梦系统的原装帮助文档里面的资料,没有说明此问题,这里有人也遇到了一样的问题,本来想回复他来,可是我是新人,他所在的版块我无权回复,就发一个新帖了,呵呵,扯远了,书归正传!
为什么会有这样的效果呢,数组名设置后是可以遍历的,而且遍历的次数也是对了,就是数据不能正常显示
肯定是哪里解析错误了,
顺着思路往下找,
最后在include/dedetag.class.php文件中的第578行和579行(版本不一样可能不同,在该文件的AssignSysTag()方法体里面)找到了答案!
$istr .= preg_replace(“/\[field:key([\r\n\t\f ]+)\/\]/is”,$k,$this->CTags[$i]->InnerText);
$str .= preg_replace(“/\[field:value([\r\n\t\f ]+)\/\]/is”,$v,$istr);
问题就在正则表达式上,主要是这部分([\r\n\t\f ]+)
说明在 [field:key 与 /] 之间可以包含换行、制表符、空格,但是不能什么都没有
也就是说 [field:key/]是不对的
必须是
[field:key /](空格的)
或
[field:key /](制表符的)
或
[field:key
/](换行的)
这样就解决问题了,我测试是可以的。
=============================
希望对需要的人可以解决问题!
下了dede模板不会用这个问题一直存在,总结其原因有三. 一,dede模板命名不标…
有很多朋友不知道织梦者中的dede免费模板的下载方法,在这里告诉您如何下载本站模板:…
有很多朋友在让我制作完模板后想自己安装dedecms模板,但并不是所有的朋友对dedecms模…
在看这个属性时,好像国内的文章都没给大家说太明白,今天就一起说说 首先来…
使用织梦CMS问答模块的站长还是挺多的,织梦问答系统高分悬赏问题,待解决问…
让ie6也支持html5的实现方法下面进入详细介绍 自HTML5标准的提出就得到非常多的关注…
我们在制作自定义表单的时候通常会为织梦默认的不能设置为必填项而感到烦恼,在这里…
此方法适合5.6及5.7 其它未测 修改 include/common.func.php文件,在最后加以…
很多网友反应v57中采集规则导入失败,提示 该规则不合法…
同狗他爹经常性的间歇抽疯,织梦者在不得已的情况下更换空间了,欢迎各位网友…
我们在对dedecms进行seo优化的时候通常会要去掉dedecms默认的a/这个地址,当然在新建…
共 1 条评论
非常感谢楼主,