【发布时间】:2019-04-27 10:16:09
【问题描述】:
我有一个 WordPress 网站,最近受到恶意软件攻击。我设法删除了所有恶意软件文件和广告安全。
但是那个黑客在所有帖子内容的末尾注入了一些如下所示的随机网址。该网站有大约 1500 条帖子。
<a href="http://www.cgparkaoutlet.com">canada goose outlet</a> <a href="http://www.cgparkaoutlet.com">canada goose outlet</a>
我需要删除这些链接。已经测试过这个 mysql 但它不工作
UPDATE wp_posts SET post_content = REPLACE(post_content, substring_index( substring_index(post_content, 'href="', -1), '"', 1),'');
UPDATE wp_posts SET post_content = REPLACE(post_content, '<a href="">','');
UPDATE wp_posts SET post_content= REPLACE(post_content, '<a href="" target="_blank">','');
UPDATE wp_posts SET post_content= REPLACE(post_content, '</a>','');
任何人都知道如何在不老化内容的情况下从所有帖子中删除这些链接。谢谢你
【问题讨论】:
-
您可以对发布的内容进行
htmlentities()。所以,JS 不会执行。 -
你的
post_content列中不会有其他非恶意的<a href=......</a>? -
检查这个答案:stackoverflow.com/a/53286571/2469308你可能会从中得到一些想法。
-
不要用mysql做解析/替换。这是非常有限的。在 PHP 中从数据库中选择数据,对其运行函数以删除恶意数据,然后更新记录。