清理上传文件夹、媒体库数据库结构

时间:2010-08-13 作者:Jan Fabry

我正在升级和清理一个从Blogger开始的旧博客。com,然后转向自托管WordPress 2.1、2.3和现在的3.0。帖子里的图片散落在各处:大部分都在照片中/wp-content/, 但不是全部/wp-content/uploads//wp-content/uploads/year/month/. 其他人仍然引用该博客。com图像服务器。我想把它们都整合在一起/wp-content/uploads/year/month/, 我认为哪个是“正确”的地方?这将使以后的升级更容易。

最好的方法是什么?我也想更新元数据,以便媒体库可以管理所有这些元数据。我找不到关于这个的任何文档,所以如果我错过了,很抱歉,请指给我看。

当然,我会提供从旧位置到新位置的重定向。最好的方法是什么?模板404.php, 插件的设计?我想添加一些日志,这样我们就可以找到引用的页面,也许可以更正它们。

(这个问题是originally asked on the WordPress support forums, 但没有得到有用的答案)。

4 个回复
SO网友:Chris_O

W3 Total Cache有一项功能,可以扫描所有帖子,将任何外部图像导入媒体库,并更改到新位置的路径。

参见屏幕截图

alt text

SO网友:hakre

正确的位置是我想说的当前设置。因此,如果您现在使用一个上载文件夹(而不是年/月子文件夹),请使用该文件夹(可能会很满,但更容易排序)。因此,只需将所有文件从年/月子目录移动到上载目录并更改数据库中的URL路径,通常就可以完成这项工作。

在所有文件都位于一个文件夹中(并已排序)之后,您可以再次更改文件夹设计,并使用PHP脚本将文件移动到正确的目录中,该脚本可以从数据库中读取日期。同样的脚本也需要采用URL路径。

这和迈克建议的剧本一模一样。

目前,WP UI不支持手动移动或重命名文件,因此您只能绑定到一些自己的代码。无论如何,这对一批产品来说都是有意义的。

现有和相关插件Add From Server (Wordpress Plugin) - &引用;“从服务器添加”;是一个快速插件,允许您导入媒体;文件从Web服务器文件系统上传到WordPress上传管理器

SO网友:MikeSchinkel

@简·法布里:你可能需要分别处理每一个案例,即博主托管的图片和wp内容之外的图片,等等。

这里有一个从Blogger导入的插件;它已经有一段时间没有更新了,但可能仍然有效,或者至少有您可以使用的代码:

还有一个较旧的插件,可能仍然可以使用,也可能无法使用:

除此之外,我认为您只需要编写一个PHP脚本,扫描文件和帖子,寻找嵌入的图像URL,开发一个交叉列表,然后移动文件并更新帖子中的引用。或者你会很幸运,这个插件仍然可以为你工作!

祝你好运

SO网友:kaiser

也许(这只是为了将来的读者——这是一个老Q)你可以列出所有的“post\\u type”=>“attachment”,然后开始从那里分离出来。我的意思是在一个数组中获取帖子并保存不同的位置。然后将其分类,以获得图像所在位置的概览。。。

结束

相关推荐

Plugin upgrade issue

我正在更新wordpress网站上安装的插件。然而,几乎一个小时以来,它仍处于维护模式。当我无意中重装时,我看到了白色的死亡大屏幕,上面写着:\"Briefly unavailable for scheduled maintenance. Check back in a minute.\"我能做些什么来解决这个烂摊子吗?