使用media upload element 我创建了一个自定义古腾堡块,其中包括一个图像上载按钮。
现在,我想实现以下目标之一:
选择图像时,应使用wordpress中的图像大小进行选择,如“缩略图”等。
如果这不起作用,则应在“保存”功能中调整图像大小,如下所示:
示例元素(1):
el(
MediaUploadCheck,
{},
el(
MediaUpload,
{
size: \'thumbnail\', //or pixel size
onSelect: onSelectImage,
allowedTypes: [ \'image\' ],
render: function ( obj ) {
var open = obj.open;
return el(
Button,
{
className: \'select-image\',
onClick: open,
},
\'Bild auswählen\'
)
},
}
),
),
示例元素(2):
el(
\'img\',
{
size: \'thumbnail\', //or pixel size
src: mediaURL,
}
),
当然,原因是,高分辨率的图像将通过web优化显示。
有人知道如何实现上述目标吗?
最合适的回答,由SO网友:josias 整理而成
我在的评论中问了同样的问题another question.
解决方案是(多亏了КиииД-МиииииириррДДД)从onSelect回调获取另一个URL。
在此之前:
function onSelectImage( media ) {
props.setAttributes( { mediaURL: media.url } );
props.setAttributes( { mediaID: media.id } );
}
然后,我控制台记录了媒体参数,在那里我可以找到不同大小的URL,因此我将其更改为以下内容以供使用:
function onSelectImage( media ) {
console.log(media);
var url;
if (media.sizes.medium.url) {
url = media.sizes.medium.url;
} else if (media.sizes.thumbnail.url) {
url = media.sizes.thumbnail.url;
} else {
url = media.url;
}
props.setAttributes( { mediaURL: url } );
props.setAttributes( { mediaID: media.id } );
}