TWCMS使用及开发手册2022.08.10

伪静态别名模式,修改文章分类后 对应文章页出错

      虽然TWCMS伪静态别名模式不推荐使用,但是有特殊需求的网站,还是会启用,如果在后台编辑文章时,修改了文章所属的分类,那么你就要解决此Bug,否则前台对应页面报错。 具体修改方法:

 1、打开\admin\control\article_control.class.php 文件。

 2、找到423行-459行,用下面的代码替换掉 

 3、保存文件,登录网站后台 - 工具 - 清除缓存 - 完工。

// 编辑时,别名有三种情况需要处理
                        if($alias && $alias_old && $alias != $alias_old) {
                                // 写入新别名
                                if(!$this->only_alias->set($alias, array('mid' => $mid, 'cid' => $cid, 'id' => $id))) {
                                        E(1, '写入全站唯一别名表出错');
                                }

                                // 删除旧别名
                                if(!$this->only_alias->delete($alias_old)) {
                                        E(1, '删除别名表数据时出错');
                                }
                        }elseif($alias && empty($alias_old)) {
                                // 写入新别名
                                if(!$this->only_alias->set($alias, array('mid' => $mid, 'cid' => $cid, 'id' => $id))) {
                                        E(1, '写入全站唯一别名表出错');
                                }
                        }elseif(empty($alias) && $alias_old) {
                                // 删除旧别名
                                if(!$this->only_alias->delete($alias_old)) {
                                        E(1, '删除别名表数据时出错');
                                }
                        }
                        
                        // 如果分类ID发生变化,更新分类内容数
                        if($cid != $data['cid']) {
                                // 旧的分类内容数减1
                                $categorys_old = $this->category->read($data['cid']);
                                $categorys_old['count'] = max(0, $categorys_old['count']-1);
                                $this->category->update($categorys_old);


                                // 新的分类内容数加1
                                $categorys['count']++;
                                $this->category->update($categorys);
                                
                                
                                //更新别名表新分类【开启伪静态别名模式时】
                                $dd['alias'] = $alias;
                                $dd['cid'] = $cid;
                                $this->only_alias->update($dd);
                                
                                $this->category->delete_cache();
                        }

 4、或者直接下载下面文件覆盖 - 登录网站后台 - 工具 - 清除缓存 - 完工。 

当你编辑文章分类后,前台文章就不会出现错误了。



猜您喜欢:

Copyright © 2012-2022TWCMS使用及开发手册 Inc. 保留所有权利。Powered by TWCMS 2.0.3

页面耗时0.0156秒, 内存占用180.84 KB, 访问数据库18次, PHP版本php8.0.3nts, 已关闭缓存

合作伙伴:爱云源码 twcms模板 老郭博客CMS 今日上线通王CMS模板 网页版PbootCMS开发助手 郑州泰鼎展柜 TWCMS随机标签插件 郑州展柜厂 大城县岩棉管怎么样及主要特点 TWCMS模板「高端响应式百度色资讯新闻类主题」 TWCMS模板「高端响应式类日主题」 TWCMS模板「简洁纯净新闻博客资讯主题模板」  响应式手游下载类网站模板 twcms支持php7.1.9替换文件 郑州空调上门维修 TWCMS模板「简洁大气新闻主题模板」 爱云CMS教程网 {block:list和{block:global_cate调用文章分类栏目名和url 雄鹰工具箱 郑州公墓价格 郑州展柜设计 郑州泰鼎展柜 郑州展柜生产厂家 珠宝展柜 河南郑州电脑上门维修 郑州led拼接屏维修