如果IPTC关键字中有特殊字符,则上载的图像不会显示在媒体库中


8

某些上传到WordPress的图像不会显示在媒体库中。图像被上传,甚至被裁剪为定义的尺寸,媒体库中有一个条目,但是预览图像不显示。我什至可以将它们用作特色图片,并且它们可以正确显示在我的网站上。

我能够找到问题的原因:如果JPG的IPTC“关键字”字段中有特殊字符(如德语变音符号),则会出现此问题。只要我使用Exiftool从显示上述问题的JPG中删除“关键字”字段,该文件就可以正常工作。我可以在不同公司托管的两个完全不同的Web服务器上的三个WordPress安装上验证此问题。Wordpress版本是4.4.1

我倾向于将其报告为WordPress错误。但是在此之前,我想进一步确定真正的问题。我可以发现,对于所有“不良”图像,表中都没有_wp_attachment_metadata条目wp_postmeta

如果我入侵wp-admin/includes/image.php文件并设置$meta['keywords'] = array();wp_read_image_metadata(),则一切正常。显然在某处有一些代码使用其结果为该附件wp_read_image_metadata()创建_wp_attachment_metadata一行。但是,_wp_attachment_metadata如果其中的编码字符串错误,则无法插入的代码在$meta['keywords']哪里?

在我的装置中是否有挂钩可以解决该问题?一个显示该问题的WordPress安装被几位精通计算机的编辑使用。告诉他们使用PC上的软件删除有问题的IPTC标签是不行的。但是我也不想在实时系统上破解提到的核心文件。

更新:这是两张相同的图像,其中一张显示问题,另一张则没有。唯一的区别是在“关键字”字段中,一个字段的内容为“甜”,另一个为内容“süß”(德语为“甜”)。

无效的图片 工作影像


我记得,IPTC字段没有标准编码,实际上它可以是任何东西,这很混乱。但是+1的问题。您可以提供示例图像来验证此行为吗?
David

2
对我来说似乎是一个WordPress错误。我认为您可以按原样举报。
MikeNGarrett '16

我认为这可能已在WordPress 4.4.2中修复:core.trac.wordpress.org/ticket/35316
JD

2
@ z80crew您能否复制上述评论中的内容?如果是这样,请随时添加一个答案并标记为接受:)
蒂姆·马隆

核心错误修复程序是否解决了这个问题?正如@TimMalone所说,添加和接受答案将有助于我们保持WPSE整洁。谢谢。
安迪·麦考利-布鲁克

Answers:


2

我已经用我在Photoshop中创建的图像进行了测试,并在每个可想到的IPTC字段中插入了“Süss”一词。

我将其上传到我的WordPress 4.6安装中,该安装未安装图像处理插件。上载顺利,在上载目录中创建了正确的缩略图,并且从相应的IPTC字段正确加载了标题字段。

此外,缩略图已正确显示在媒体库中。

因此,我倾向于说这确实是一个自此以来已解决的错误


0

问题似乎也出现在文件名中的特殊字符(在我的情况下为“â”)。至少发生在我身上,而且我从未编辑过exif信息,因此它不仅与IPTC字段有关。现在,在编辑文件名并删除重音后,它可以按预期工作。

最奇怪的是,由于知道经常遇到编码问题,所以我找不到任何帖子或文档说特殊字符是不可接受的,或者应该在wordpress库文件名中避免使用特殊字符,但是鉴于人们有很多问题,建议不要使用任何特殊字符...或要求wordpress对此进行处理。如果发现任何Spechar强制使用干净的名称,并且至少不存在进一步发布的风险,则可能至少仅使上传失败。

希望这对某人有帮助。在计算机科学中,字符编码一直都是一团糟。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.