有没有比WordPress默认使用的更好的实现响应图像的方法?

时间:2020-09-01 作者:Matt H

我是WordPress的新手,我从自己的自定义主题开始。

对于WordPress中的响应图像,我目前在主题中使用自定义html块和图片或img元素,这些图片或img元素使用我自定义裁剪和压缩的多个上传图像,以支持不同的分辨率和媒体大小(对于包含源元素的图片元素)以及srcsets的x描述符。我目前已禁用WordPress在上载图像时自动创建多个图像大小。这是一个很大的工作,但我得到了我想要的。我不喜欢在img元素中使用带有w描述符和大小的srcset,因为具有高设备像素比(例如3x、4x)的移动设备总是会要求比我想要的更大的图像大小。

我花了很多时间在线研究如何实现WordPress响应图像的解决方案,但没有发现任何真正有用的方法。一些文章建议上传您自定义裁剪和压缩的最大图像,并将自定义图像大小添加到WordPress的功能中。php文件,它将允许WordPress为您生成其他大小的图像。然而,我不希望WordPress在我上传一个图像文件时自动生成每一个不同的图像大小。WordPress的图像块也使用w描述符和大小,我不赞成使用。

如果我必须使用WordPress的图像块,是否有办法在图像块本身中使用w描述符和大小自定义srcset?

我正在学习JavaScript和React,因此我可以通过支持多个图像上传的插件创建自己的图像块。使用WordPress是否可以在自定义图像块中上载多个图像?

我还想知道你们是否可以将个人分组。上传时,我在WordPress数据库中自定义裁剪并压缩为单个附件的jpg图像?是否有一个钩子或有多个钩子可以用来完成这一点,或者这在WordPress中是不可能的?

有人能给我提个建议,或给我指一篇文章或讨论,让我在WordPress中找到一个更好的响应图像解决方案吗?

真诚地

马特

1 个回复
SO网友:Will

不幸的是,我发现古腾堡/块编辑器中的图像还有很多需要改进的地方,2020年的图像开发工作主要集中在块编辑器中添加裁剪和旋转图像。块编辑器中响应图像的局限性是我对块编辑器最大的批评之一。

到目前为止,您所描述的内容令人印象深刻,将您的发现写得更详细可能会帮助其他试图在块编辑器中找出图像最佳实践的人。

Issue #6177 有很多关于改进块编辑器中响应图像的使用的背景和讨论,尽管一些信息可能已经过时。

如果我必须使用WordPress的图像块,是否有办法在图像块本身中使用w描述符和大小自定义srcset

不幸的是,除非您自己编写此功能,否则这还不可能实现。有一个open issue to add/customize the default srcset sizes on Gutenberg\'s image block.

使用WordPress是否可以在自定义图像块中上载多个图像

核心WordPress图像块设计为只处理一个图像;对于多个图像,请使用gallery block.

然而,我不希望WordPress在我上传一个图像文件时自动生成每一个不同的图像大小

同意,在某些情况下,您可能不知道这是一种挫折,并且存在于整个WordPress生态系统中,而不仅仅存在于块编辑器中。我听说过一种解决方案,您可以自定义生成的图像大小when you upload image within a custom post type 但这样做有点迂回。

最后,在我的外行看来,一个基本问题是,单个图像块的底层代码与Gallery的不同,Gallery允许您实现,因此下面的一些代码无法共享。(参考:https://github.com/WordPress/gutenberg/issues/10057#issuecomment-617000905https://github.com/WordPress/gutenberg/issues/11436

相关推荐

Calling hooks in functions

我习惯于使用主题挂钩,定期添加功能,但难以使用插件挂钩来过滤内容。这是我所知的极限,我试图理解这个过程,但没有用。我正在使用GigPress 管理事件。它允许您添加一个节目(基于日期),并将该节目与帖子(标准WP帖子)关联。我已经创建了一个自定义的帖子类型—productions—来关联节目,而不仅仅是一般的博客帖子。插件有一个钩子-gigpress_related_post_types —允许您用自己选择的任何CPT交换帖子。如果我直接编辑插件,它就会工作,将“帖子”替换为“产品”。如果我添加了我希望是