Php 从帖子中删除以此ID开头的所有图像
我有大约300篇Wordpress帖子,每一篇帖子上都有我过去使用过的一项服务的“跟踪像素”(他们使用IMG标签来实现)。 看起来是这样的:Php 从帖子中删除以此ID开头的所有图像,php,html,mysql,wordpress,Php,Html,Mysql,Wordpress,我有大约300篇Wordpress帖子,每一篇帖子上都有我过去使用过的一项服务的“跟踪像素”(他们使用IMG标签来实现)。 看起来是这样的: (每个跟踪像素具有不同的serviceTrack\u ID) 我想从我所有的帖子中删除所有这些img id(删除图片)。我该怎么做? 谢谢大家! 假设您拥有必要的权限,您可以转储数据库: mysqldump -u yourUserName -p yourDatabaseName wp_posts > posts.sql 然后替换字符串: find
(每个跟踪像素具有不同的serviceTrack\u ID
)
我想从我所有的帖子中删除所有这些img id(删除图片)。我该怎么做?
谢谢大家! 假设您拥有必要的权限,您可以转储数据库:
mysqldump -u yourUserName -p yourDatabaseName wp_posts > posts.sql
然后替换字符串:
find /path/where/you/put/dump/posts.sql -type f -exec sed -i 's/<img id="serviceTrack_*"
style="margin: 0px !important; padding: 0px !important;"
src="https://example-domain/e/ir?source=example148522" alt="example" width="0" height="0"
border="0" />//g' {} \;
find/path/where/you/put/dump/posts.sql-type f-exec sed-i's///g'{}\;
然后重新导入该表:
mysqlimport -u yourUserName -p yourDatabaseName wp_posts < posts.sql
mysqlimport-u yourUserName-p yourDatabaseName wp_posts
免责声明:我没有在实际数据上测试replace命令。我建议您在尝试任何操作之前备份数据,并在覆盖实时数据之前在虚拟安装中对其进行测试。将post字段数据拉入客户端代码,使用dom解析器查找/删除相关html代码段,然后将修改后的代码段塞回数据库。在mysql中这样做会很痛苦,因为你只能进行普通的字符串操作。它们是有序的还是随机的id?它们是非常随机的。serviceTrack_3274570、serviceTrack_3274581、serviceTrack_3274599等等。Marc B,不幸的是,我不知道怎么做——我的编程技能不太好。有没有一个简单的方法可以做到这一点呢?也许你会想用这样的方法进行迭代<代码>文档.querySelector('[id^=“serviceTrack-“]').id代码>谢谢你,我会看看我能做些什么。