【问题标题】:Images in Server not appearing in WordPress Media Library服务器中的图像未出现在 WordPress 媒体库中
【发布时间】:2017-05-20 18:30:44
【问题描述】:

我搞砸了一些 SQL 查询,结果搞砸了;从那时起,网站服务器上存在的图像不会出现在 WordPress 媒体库中。 wp_postswp_postmeta 表似乎存在问题。

我认为我的数据库已损坏;虽然,当通过http://example.com/wp-content/uploads/YEAR/MONTH/FILE_NAME 访问图像时,图像会显示并且它们也可以在主页上正常显示,但它们在 WordPress 媒体库中丢失。仅显示新上传的图像。我需要尽快解决这个问题。

任何帮助将不胜感激。谢谢。

【问题讨论】:

  • 搞砸了,对吧?你能edit你的问题更具体吗?您是否进行了UPDATE 操作? DELETE 操作?

标签: php mysql sql wordpress


【解决方案1】:

媒体库中的项目由wp_posts 中的行表示。他们有post_type = 'attachment'。您是否删除了其中一些行?

编辑:要让一个项目出现在 WordPress 的媒体库中,它必须出现在 /uploads/YYYY/MM/ 文件夹中的某个位置以及 @ 中的 'attachment' 行中987654326@ 表。每个媒体库项目在该表中都有自己的行。 更改该表中的post_type 值似乎不太可能恢复您的媒体库。除非它们还在那里,并且您在乱搞时以某种方式更改了它们的 post_type 值。不太可能。

您有数据库的备份吗?如果是这样,请恢复它。那是你最好的选择。

无论如何,在开始尝试修复此问题之前进行备份。然后进行定期备份。这并不难,它会为你在未来省去无尽的悲伤。

你有几十件丢失的物品吗?如果是这样,请使用 FTP 从您的 WordPress 文件系统下载它们,然后使用 WordPress 媒体库功能重新上传它们,以重新创建它们。

编辑不要将它们从您的uploads/YYYY/MM 文件夹中删除;只需重新上传它们。它们最终会出现在这些文件夹中的两个位置,两者中较新的位置对应于wp_posts 中新创建的'attachment' 行。较旧的帖子仍应使用文件夹中较旧的图像文件正确呈现。

如果某些图像在 uploads 中显示两次是个问题,抱歉。请参阅我上面关于备份的问题。不要通过弄乱数据库来试验正在运行的 WordPress 实例。同样,不要通过在油箱中尝试不同的物质来试验您的汽车。放了伏特加或者植物油,车就跑不动了,原因就乱了。

或者,尝试使用 AddFromServer 插件来恢复您丢失的项目。 https://wordpress.org/plugins/add-from-server/

您是否有数百个或更多丢失的物品?如果是这样,您可能处于真正不愉快的境地。

【讨论】:

  • 谢谢,在我的数据库中,post_typepostrevison。如何将其设置为attachment,并希望有帮助?另外,我没有数据库的备份。你还说我应该重新上传图片,但帖子中的图片在 url 中有 YEARMONTH,所以包含这些图片的帖子可能会损坏图片。我也会检查 AddFromServer 插件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-25
  • 1970-01-01
  • 1970-01-01
  • 2020-03-25
  • 1970-01-01
相关资源
最近更新 更多