織夢dedecms修復更新聯動緩存不更新聯動js的bug,
導讀:DEDE技術DEDE技術織夢5.7版本內容模型管理自帶有分類信息模板,今天修改了其信息類型的聯動類別,在核心-頻道模型-聯動類別管理,修改了信息類別,但是發現修改完了后,更新所有枚舉緩dede58模板織夢模板。
織夢5.7版本“內容模型管理”自帶有分類信息模板,今天修改了其“信息類型”的聯動類別,在“核心”->"頻道模型"->"聯動類別管理",修改了信息類別,但是發現修改完了后,“更新所有枚舉緩存”、“系統緩存“、”更新欄目HTML“,這些全部更新后,發現列表頁調用的地方還是沒有更新,還是保持原來修改前的信息類型。
解決方案:
我們修改的聯動類別的”緩存組名“是叫"infotype",打開data/enums目錄,找到infotype.php文件和“infotype.js”,這兩個就是前臺調用的聯動類型,全是有系統自動生成。點擊打開,發現infotype.php 已經更新為最新的,但是infotype.js 還是保持為原來的老的信息,這可能也是織夢的一個小BUG,就是再更新的時候只更新了php腳本,而沒有去更新js腳本,我們可以復制infotype.php中的內容到info夢織模板type.js中,并按照js規則重寫,然后更新下”系統緩存“和”更新列表HTML“,發現前臺已經更新為最新的聯動信息。
對于infotype.php、infotype.js這兩個文件,在多次測試織夢聯動類別之后發現一些規律(時而會發生,不是每次發生):
1、新建的聯動,在第一次更新時會同時更新
2、在對已有的聯動進行修改后,更新時,只更新infotype.php
3、在對已有聯動進行添加多級聯動時,比如對一級聯動添加為二級或者三級時,系統會對infotype.php、infotdede下瓻模板下載ype.js同時更新。
解決*.js聯動不更新的問題,的方法如下:
文件\include\enums.func.php
查找 if(empty($issign)) WriteEnumsJs($egroup);
替換為
//if(empty($issign)) WriteEnumsJs($egroup);
//修復更新緩存不更聯動js 這里的emp織夢模板免費ty $issign 為空的時候才更新js ,但是根據代碼,$issign 不可能為空,無法理解。
WriteEnumsJs($egroup);相關dede58模板織夢模板。
聲明: 本文由我的SEOUC技術文章主頁發布于:2023-07-21 ,文章織夢dedecms修復更新聯動緩存不更新聯動js的bug,主要講述緩存,標簽,織夢網站建設源碼以及服務器配置搭建相關技術文章。轉載請保留鏈接: http://www.bifwcx.com/article/web_32624.html