怀化SEO培训(phpcms v9更新缓存后菜单无法使用)

cesc
                           

怀化SEO培训概述

PHPCMS V9更新缓存后联动菜单无法使用,这是由于更新缓存代码少传递参数(编写有bug)导致。只需将更新缓存cache_api.class.php文件中的linkage方法稍加修改就可解决。

问题描述

PHPCMS更新缓存后,编辑含有联动菜单的文章时,联动菜单无法显示。如果进入【扩展】–> 【联动菜单】,点击当前使用菜单的【更新缓存】,再去编辑内容,就可以正常显示联动菜单。这样的程序是有bug的,操作麻烦还容易出现问题。

PHPCMS更新缓存后联动菜单无法使用
PHPCMS更新缓存后联动菜单无法使用

解决方法

通过分析程序,发现顶部的更新缓存调用的联动菜单方法和通过联动菜单栏目使用的方法不一样,顶部更新缓存缺少一个参数,导致更新缓存出现问题。
找到phpcms/modules/admin/classes/cache_api.class.php文件,找到linkage方法,添加红色部分代码,或者将整个方法替换成下边代码:

/**
 * 更新联动菜单缓存方法
 */
public function linkage() {
    $infos = $this->db->select(array('keyid'=>0));
    foreach ($infos as $r) {
        $linkageid = intval($r['linkageid']);
        $r = $this->db->get_one(array('linkageid'=>$linkageid),'name,siteid,style,setting');
        $info['title'] = $r['name'];
        $info['style'] = $r['style'];
        $info['setting'] = string2array($r['setting']);
        $info['siteid'] = $r['siteid'];
        $info['data'] = $this->submenulist($linkageid);
        setcache($linkageid, $info,'linkage');
    }
    return true;
}

福利来了

最后给大家分享个福利,由于PHPCMS官方已经不再更新,为了能更好的继续使用PHPCMS,我在Github上持续更新PHPCMS,不仅仅修复了目前存在的漏洞,还增加支持https,PHP7等功能,还提供完整版免费下载。仅限个人学习使用,请勿用于商业用途,如需商业使用,请联系获得授权。

phpcms v9 Github仓库地址:https://github.com/Abel-Lan/phpcms
phpcms v9 最新版本下载地址:https://github.com/Abel-Lan/phpcms/releases

本文《怀化SEO培训(phpcms v9更新缓存后菜单无法使用)》由错误博客(cuowu.com)整理或原创,感谢您的阅读。

随机文章

如何制作客户无法忽视的铅磁铁
满座网昆山(新规给特斯拉和“蔚小理”敲响数据监管的警钟)
小小课堂:【北京seo顾问】一分钟读懂百度熊掌号
小小课堂:【蚌埠seo】什么是关键词影响力
小小课堂:电商运营公司排名?中关村在线是如何运营的
关键词排名查询方法
家庭理财的误区
卖盲盒卖出500亿?南阳SEO网站优化培训

百度搜索“错误博客”即可找到本站,微信搜索“cuowucom”关注错误博客公众号。错误博客( cuowu.com )欢迎用户投稿,发布者:用户投稿,文章版权归作者所有,投稿文章不代表错误博客立场,中二少年发布为错误博客原创文章,转载请注明出处:https://cuowu.com/19908.html