PHPCMS删除文章后数据库中仍有删除文章中的关键词解决办法

2019-11-13 浏览:448
PHPCMS删除文章后数据库中仍有删除文章中的关键词解决办法
评论:(0)复制地址

phpcms之前发布的文章删除了之后,数据库的表字段中还是保存的有之前的文章中的关键词的,也就是删除文章并不能连带之前发布的文章的关键词一起删除,经过分析明白了,原来是程序在发布文章的那一刻文章就自动保存在了数据库的表中了,或者修改文章后,会重复在v9_keyword_data插入数据。那么该如何解决这个问题呢?


办法如下:


1、找到/phpcms/modules/content/fields/keyword/updata.inc.php中找到以下代码:


$keyword_data_db->insert(array('tagid'=>$tagid, 'siteid'=>$siteid, 'contentid'=>$contentid));

修改为:


if (!$keyword_data_db->get_one(array('tagid'=>$tagid, 'siteid'=>$siteid, 'contentid'=>$contentid))) {

    $keyword_data_db->insert(array('tagid'=>$tagid, 'siteid'=>$siteid, 'contentid'=>$contentid));

}

2、找到/phpcms/modules/content/content.php文件;搜索public function delete();在删除内容下面添加一下代码;


//删除关键字

$this->keyword_db = pc_base::load_model('keyword_model');

$this->keyword_data_db = pc_base::load_model('keyword_data_model');

$keyword_temp=$this->keyword_data_db->listinfo(array('contentid'=>$id.'-'.$modelid));

$this->keyword_data_db->delete(array('contentid'=>$id.'-'.$modelid));

foreach($keyword_temp as $one){

$same_keyword=$this->keyword_data_db->listinfo(array('tagid'=>$one[tagid]));

if(empty($same_keyword)){

$this->keyword_db->delete(array('id'=>$one[tagid]));

}

}

PHPCMS删除文章后数据库中仍有删除文章中的关键词解决办法


3、替换对应的文件,进入后台更新下网站缓存就可以了。


评论:(0)复制地址
发布:苗景云 | 分类:IT技术&设计 | Tags:PHPCMS

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。