我正在搞乱一些SQL查询而且搞砸了一些东西;从那时起,网站服务器上存在的图像不会出现在WordPress媒体库中。这似乎是wp_posts
和wp_postmeta
表的问题。
我认为我的数据库已损坏;但是,当通过http://example.com/wp-content/uploads/YEAR/MONTH/FILE_NAME
访问图像时,图像会显示,并且它们在主页上也可以正常显示,但在WordPress媒体库中它们丢失了。仅显示新上传的图像。我需要快速解决这个问题。
任何帮助都会受到很多赞赏。感谢。
答案 0 :(得分:1)
媒体库中的项目由wp_posts
中的行表示。他们有post_type = 'attachment'
。你删除了那些行吗?
修改:要使某个项目出现在WordPress的媒体库中,它必须两者出现在/uploads/YYYY/MM/
文件夹和{{}中的某个位置{1}}表中的{1}}行。每个媒体库项目在该表中都有自己的行。似乎不太可能更改该表中的 'attachment'
值将恢复您的媒体库。除非他们仍在那里,否则当你搞砸时,你以某种方式改变了他们的wp_posts
值。不可能的。
你有数据库的备份吗?如果是,请恢复它。这是你最好的选择。
无论如何,在开始尝试修复此问题之前进行备份。然后进行定期备份。它并不难,它将在未来拯救你无尽的悲痛。
你有几十件丢失的物品吗?如果是这样,请使用FTP从WordPress文件系统下载它们,然后使用WordPress媒体库功能重新上传它们,以重新创建它们。
修改不要将其从post_type
文件夹中删除;只需重新上传它们。它们会在这些文件夹中的两个位置结束,其中较新的一个对应于post_type
中新创建的uploads/YYYY/MM
行。旧文章仍应使用文件夹中较旧的图像文件正确呈现。
如果在'attachment'
中出现两次图片是个问题,抱歉。请参阅上面有关备份的问题。不要通过弄乱数据库来试验正在运行的WordPress实例。以同样的方式,不要通过尝试燃料箱中的不同物质来试验您的汽车。如果你把伏特加或植物油放在那里,汽车就不会再运行了,原因就会很混乱。
或者,尝试使用AddFromServer插件恢复丢失的项目。 https://wordpress.org/plugins/add-from-server/
你有数百个或更多的遗失物品吗?如果是这样,你可能会处于一种真正令人不愉快的境地。