单行道 发表于 2021-4-11 12:05:12

如何批量替换论坛标题和内容关键词

Discuz!提供了关键词过滤的功能,可以设置禁止某些词语为非法,有的恶心的词语或是过时的词语要替换,下面分享下简单好用的SQL语句批量替换的方法
批量替换帖子内容

[*]UPDATE pre_forum_post SET message=REPLACE(message,'替换前词语','替换后词语')

复制代码

批量替换标题

[*]UPDATE pre_forum_threadSET subject = REPLACE(subject , ‘替换前词语’ , ‘替换后词语’) ;

复制代码

[*]UPDATE pre_forum_post SET subject = REPLACE(subject,’替换前词语’,’替换后词语’)

复制代码


下面介绍2个执行SQL语句的地方,以替换帖子内容为例:
1phpmyadmin
进入自己的phpmyadmin数据库管理里面,点击任意一个表--SQL--对话框里面输入sql命令---执行

http://bbs.verydz.com/forum.php?mod=attachment&aid=MTIzMXxlZDBlOWY3ZnwxNjE4MTEzODEyfDB8MTUwNg%3D%3D&noupdate=yes

2使用论坛后台执行SQL
需要将ftp里面找到 config/config_global.php 当中的 $_config 设置修改为 1。
然后去论坛后台--站长--数据库

http://bbs.verydz.com/forum.php?mod=attachment&aid=MTIzMnxlYzlhOWQ3N3wxNjE4MTEzODEyfDB8MTUwNg%3D%3D&noupdate=yes


如果是用的是7.X的版本

[*]UPDATE cdb_posts SET message=REPLACE(message,'替换前词语','替换后词语');

复制代码

[*]UPDATE cdb_threads SET subject=REPLACE(subject,'替换前词语','替换后词语');

复制代码

[*]UPDATE cdb_posts SET subject=REPLACE(subject,'替换前词语','替换后词语');

复制代码



如果你不确定表前缀是否正确,可以进到数据库phpmyadmin里看一下具体的表名前缀,确认无误后再替换。操作前不要忘记替换前先备份!

寂寞男孩 发表于 2021-5-7 16:49:51

看不懂也要学习下

Ridea 发表于 2021-10-9 10:17:20

SupeSite7.5批量替换论坛标题和内容关键词
批量替换帖子内容
UPDATE supe_spacenews SET message=REPLACE(message,'替换前词语','替换后词语')
页: [1]
查看完整版本: 如何批量替换论坛标题和内容关键词