批量删除垃圾文章和提问
这几天很头疼的一件事就是,wc3.1.9被人灌进去太多的垃圾文章和提问。
一共10000多条。
后台管理里批量删除每次只能删除20个。10000/20 = 500 我们得操作500次
直接删除数据库里的数据,如果删除不恰当会造成很多问题。
所以我从程序里出发,找到删除代码,然后自己找到最大的垃圾文章编号和最小的。
文章和问题的删除代码都在/app/admin/ajax.php里
我们可以搜索关键字 del' 后面的单引号别忘记了,否则会搜出很多。
搜到
case 'del':
foreach ($_POST['article_ids'] AS $article_id)
{
$this->model('article')->remove_article($article_id);
}
H::ajax_json_output(AWS_APP::RSM(null, 1, null));
break;
自己备份下代码
改成
case 'del': for($i=最大垃圾文章ID;$i>最小垃圾文章ID;$i--) { $this->model('article')->remove_article($i); } H::ajax_json_output(AWS_APP::RSM(null, 1, null)); break;然后在管理端点击删除按钮。 等一会就可以清除这些垃圾文章了。 删除完记得把代码恢复。 同理 删除垃圾问题 搜索 remove' 找到
case 'remove':
foreach ($_POST['question_ids'] AS $question_id)
{
$this->model('question')->remove_question($question_id);
}
H::ajax_json_output(AWS_APP::RSM(null, 1, null));
break;
改成
case 'remove': for($i=最大垃圾问题ID;$i>=最小垃圾问题ID;$i--) { $this->model('question')->remove_question($i); } H::ajax_json_output(AWS_APP::RSM(null, 1, null)); break;
2018-08-01 15:41
2018-08-01 14:11
2018-08-01 10:09
2018-07-31 20:38
2018-07-31 17:58
2018-07-31 17:40