更改数据库中的特色图像URL

时间:2012-11-01 作者:stemie

我把我的图片存储在另一台服务器上,我设法更改了数据库中的URL,但我似乎无法更改特色图片的URL?

我不会再添加任何图像,所以我只想更改所有图像的url。

这是我用于普通图像的sql

UPDATE wp_posts SET post_content = REPLACE (post_content, \'src="http://www.oldsiteurl.com\', \'src="http://newsiteurl.com\');
以及

UPDATE wp_posts SET  guid = REPLACE (guid, \'http://www.oldsiteurl.com\', \'http://newsiteurl.com\') WHERE post_type = \'attachment\';
除特色图片外,其他所有图片都很好。

1 个回复
最合适的回答,由SO网友:s_ha_dum 整理而成

特色图像存储在*_postmeta 下的表格_thumbnail_id 钥匙事实上,该表中可能有很多图像/媒体URL,但您没有更改。问题是,许多东西存储在序列化数组中,并且如上所述使用SQL更改它们将(可能)破坏这些数组。我建议使用Velvet Blues Update Urls.

看起来您已经更改了所有URL,而不仅仅是图像/媒体URL。这就是你想要的吗?

Also, you should never change the guid.

注意和编辑:我刚刚注意到WordPress Codex中的附件媒体有一个例外。我不记得曾经看到过,我也不知道那是怎么回事,我也不知道现在该怎么办。

结束

相关推荐

Mysqldump add drop table?

我注意到在Codex中显示了用于备份数据库的--add drop table选项。在我搞砸之前,这是否意味着在最终导入备份时,如果目标数据库中存在这些表,它们将被覆盖?我不想在备份桌子时把它们弄掉!user@linux:~/files/blog> mysqldump --add-drop-table -h mysqlhostserver -u mysqlusername -p databasename (tablename tablename tablename) | bzip2