说真的,干建站这么多年,我见过的老站十台有八台用phpcms,而十个用phpcms的老站,八个都碰过评论失效的问题。这不就是来找phpcms评论功能失效修复教程的嘛?我跟你掏心窝子说,当年我为了搞明白phpcms评论功能失效修复,熬了两个大夜,试了七八种法子,踩过的坑比你喝过的珍珠奶茶还多。
我给你打个比方啊,你开了个老糖水铺,phpcms就是你当年攒钱搭的铺面,评论功能就是你放门口的留言本,客人吃了好吃想给你夸两句,提个建议,结果发现留言本要么没了,要么写了字你看不见,这不就亏了?咱们今天干的活,就是phpcms评论功能失效修复,把这本留言本给你老老实实放回原位,让你天天收好评收反馈。
我把这么多年碰到的phpcms评论功能失效修复问题做了个总结,90%的情况都逃不开下面这四个坑,你照着挨个查,挨个改,保准比你瞎摸效率高一百倍。
我碰到最多的就是这个情况!很多朋友迁移老站的时候,图省事只导了内容、用户这些核心表,直接把评论相关的两张表落下了,表都没了,评论可不就直接失效了嘛!我第一次做phpcms评论功能失效修复就栽这了,折腾半天都没想到是表丢了。
怎么查?打开你服务器的phpmyadmin,找到你网站的数据库,搜搜有没有这两张表:v9_comment和v9_comment_data_1,找不到的话,直接把下面这段SQL复制到数据库运行,补张表就完事儿了:
``` CREATE TABLE IF NOT EXISTS `v9_comment` ( `commentid` char(30) NOT NULL, `siteid` smallint(5) unsigned NOT NULL DEFAULT '0', `title` char(255) NOT NULL, `url` char(255) NOT NULL, `total` int(10) unsigned NOT NULL DEFAULT '0', `bad` mediumint(8) unsigned NOT NULL DEFAULT '0', `good` mediumint(8) unsigned NOT NULL DEFAULT '0', `lastupdate` int(10) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`commentid`), KEY `siteid` (`siteid`) ) TYPE=MyISAM; CREATE TABLE IF NOT EXISTS `v9_comment_data_1` ( `id` int(10) unsigned NOT NULL auto_increment, `commentid` char(30) NOT NULL, `userid` int(10) unsigned NOT NULL DEFAULT '0', `username` varchar(20) NOT NULL, `ip` char(15) NOT NULL, `content` text NOT NULL, `status` tinyint(1) NOT NULL DEFAULT '0', `creat_at` int(10) unsigned NOT NULL DEFAULT '0', `reply` text NOT NULL, `parentid` int(10) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`), KEY `commentid` (`commentid`), KEY `status` (`status`) ) TYPE=MyISAM; ```跑完SQL刷新一下,表就补好了,这一步搞定,一半的phpcms评论功能失效修复问题直接就解决了,就这么简单。
这个是第二常见的问题,我做十次phpcms评论功能失效修复能碰到三次。很多朋友装完phpcms,或者更新完配置,不知道碰了哪里,把评论权限给关了,要么是全站没开,要么是对应栏目没开,客人连评论框都看不到,可不就失效了嘛!这不就是你把留言本锁柜子里了,客人想写也没地方写啊。
解决起来两步,比泡方便面还简单:

就这两步,你花三分钟都不到,就能搞定这个问题,就问你香不香?
这个问题坑人特别狠!我当初碰的时候,评论框显示得好好的,填完内容点提交,啥反应都没有,既不报错也不跳转,我折腾半天才发现是JS加载失败了。很多朋友迁移网站改了域名,或者改了网站目录,模板里的JS路径还是旧的,JS加载不出来,提交事件根本触发不了,可不就没反应嘛!这不就是你摆了留言本,没给笔,客人想写也写不了啊!
修起来也简单,打开你模板目录里的评论页模板,一般是comment/list.html或者内容页模板,找到引用评论JS的代码,看看路径是不是写死了旧域名,改成你现在的新域名,或者换成相对路径就搞定了。一般改成带动态变量的路径就没问题,改完刷新一下,JS就能正常加载了,提交功能也就回来了。
现在很多朋友换服务器,PHP版本都升到5.4以上了,老版phpcms v9是适配低版本PHP的,高版本PHP去掉了魔术引用和全局注册变量,评论接口直接报错,你点提交直接返回500,这不就失效了嘛!
怎么修?找到接口文件phpcms/modules/comment/index.php,在文件开头加一行代码就行:extract($_REQUEST);,这一步就是把传参给补上,兼容高版本PHP,改完之后你再试,提交就正常了,这个问题也就解决了。
我跟你说,做完phpcms评论功能失效修复,一定要自己去前台试一遍,别改完后台就不管了,回头客人还是留不了言,那不白折腾嘛!测试就走三步:
说句掏心窝子的土味真话,咱做网站就像养老伙计,phpcms陪了你这么多年,稳定好用,偶尔出点小毛病,花十几二十分钟修修就好,根本不用动不动就换框架换站,花那个大价钱犯不上。你想啊,phpcms评论功能失效修复好了,客人能留言互动了,网站权重上去了,流量来了,钱不就赚到了,赚到了就能吃火锅喝奶茶,这不就是美滋滋的良性循环嘛!
我作为踩过无数坑的过来人,把这些法子整理出来,就是让你少走弯路,要是你照着试了还是没修好,那你评论区留个言,我再给你想办法,毕竟phpcms评论功能失效修复我见得太多了,啥奇奇怪怪的问题没碰过呀!
易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。
Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图