我正在为朋友做点好事,让他从Blogger转移到托管的WordPress博客上。MySQL:如果字符串以jpg,gif或png结尾,则替换子字符串
最大的问题是,有超过1,800个帖子,有很多图片链接需要处理。 WordPress没有自动导入这些内容的机制,所以我正在手动进行。
我已经使用wget下载曾经在网站上链接/嵌入的每一个图像。现在我需要一些建立MySQL查询的帮助来将博客中的所有图像更改为新地址。
例如:
http://www.externaldomain.com/some/link/to/an/image.jpg
应该成为:
http://www.newbloghosting.com/wordpress/wp-content/uploads/legacy/www.externaldomain.com/some/link/to/an/image.jpg
所以该条件,如果在POST_CONTENT字符串为jpeg,JPG,GIF或PNG结束时,替换:
http://
与
http://www.newbloghosting.com/wordpress/wp-content/uploads/legacy/
我知道该怎么做了毯子
UPDATE wp_posts SET post_content = replace(post_content, 'http://www.old-domain.com', 'http://www.new-domain.com');
更换,但我有一个很难搞清楚如何完成我的更细致,有条件的方法。
感谢您提供的任何指导。 (在这里张贴或ServerFault之间撕裂,但SO看起来像它有很多的MySQL大师,所以我在这里)。
如果区分大小写是一个问题,请使用'UPPER'或'LOWER'中的'INSTR'调用来匹配文件扩展名的大小写 - 在我的答案中,它会是'LOWER'。 – 2010-01-19 04:10:08