用户名:

密码:

验证码:

2014年
当前位置:首页 > 生活百科 > 网友说说 >

dedecms修复更新联动缓存不更新联动js的bug

2016-12-23 20:12 合德网 点击次数 :

织梦5.7版本“内容模型管理”自带有分类信息模板,今天修改了其“信息类型”的联动类别,在“核心”->"频道模型"->"联动类别 管理",修改了信息类别,但是发现修改完了后,“更新所有枚举缓存”、“系统缓存“、”更新栏目HTML“,这些全部更新后,发现列表页调用的地方还是没 有更新,还是保持原来修改前的信息类型。

解决方案:

我们修改的联动类别的”缓存组名“是叫"infotype",打开 data/enums目录,找到infotype.php文件和“infotype.js”,这两个就是前台调用的联动类型,全是有系统自动生成。点击打 开,发现infotype.php 已经更新为最新的,但是infotype.js 还是保持为原来的老的信息,这可能也是织梦的一个小BUG,就是再更新的时候只更新了php脚本,而没有去更新js脚本,我们可以复制 infotype.php中的内容到infotype.js中,并按照js规则重写,然后更新下”系统缓存“和”更新列表HTML“,发现前台已经更新为 最新的联动信息。

对于infotype.php、infotype.js这两个文件,在多次测试织梦联动类别之后发现一些规律(时而会发生,不是每次发生):

1、新建的联动,在第一次更新时会同时更新

2、在对已有的联动进行修改后,更新时,只更新infotype.php

3、在对已有联动进行添加多级联动时,比如对一级联动添加为二级或者三级时,系统会对infotype.php、infotype.js同时更新。

解决*.js联动不更新的问题,的方法如下:

文件\include\enums.func.php

查找 if(empty($issign)) WriteEnumsJs($egroup);

替换为

//if(empty($issign)) WriteEnumsJs($egroup);

//修复更新缓存不更联动js 这里的empty $issign 为空的时候才更新js ,但是根据代码,$issign 不可能为空,无法理解。

WriteEnumsJs($egroup);

热门关键词:

(责任编辑:管理员)
文章人气:
(请您在发表言论时自觉遵守互联网相关政策法律法规,文明上网,健康言论。)
用户名:
验证码:
首页 | 新闻 | 财经 | 军事 | 百科 | 科技 | 数码 | 汽车 | 游戏 | 娱乐 | 体育 | 文化 | 教育 | 房产 | 旅游 | 健康 | 女性 | 明星 | 美女