Ищете, как получить миниатюру сообщения или URL-адрес вложения по его идентификатору в WordPress gutenberg?
Вы можете получить возвращенный объект записи, используя эквивалент WordPress Gutenberg для WP_Query (или эквивалент WordPress Gutenberg для get_post ).
Обратите внимание, что в объекте сообщения вы можете получить идентификатор рекомендуемого медиа, который хранится в featured_mediaсвойстве.
Затем вы можете использовать getMediaдля получения свойств этого вложения по его идентификатору, например:
wp.data.select( 'core' ).getMedia( 42 );
Вот он в консоли:
Использование getMedia в консоли.
Мы можем изучить объект изображения, который возвращается в консоли, и увидеть, что мы можем получить все данные, замещающий текст, метаданные и размеры изображения, которые нам нужны для отображения изображения.
Обратите внимание, что размеры изображений в приведенных ниже примерах данных были сокращены, в противном случае это продолжается довольно долго.
id: 101
date: "2020-03-21T14:02:00"
date_gmt: "2020-03-21T14:02:00"
guid: {
rendered: "https://wholesomecode.ltd/wp-content/uploads/2020/03/Code-Example.png"
raw: "https://wholesomecode.ltd/wp-content/uploads/2020/03/Code-Example.png"
}
modified: "2020-03-21T14:02:00"
modified_gmt: "2020-03-21T14:02:00"
slug: "code-example"
status: "inherit"
type: "attachment"
link: "https://wholesomecode.ltd/code-example/"
title: {
raw: "Code Example"
rendered: "Code Example"
}
author: 1
comment_status: "closed"
ping_status: "closed"
template: ""
meta: {
_wcltd_meta_example_1: "1"
_wcltd_meta_example_2: "Hello"
}
permalink_template: "https://wholesomecode.ltd/wp-content/uploads/2020/03/Code-Example.png/?attachment_id=101"
generated_slug: "code-example"
description: {
raw: "Code Example"
rendered: "..."
}
caption: {
raw: "Code Example"
rendered: "<p>Code Example</p>↵"
}
alt_text: "Code Example"
media_type: "image"
mime_type: "image/png"
media_details: {
width: 2310
height: 1400
file: "2020/03/Code-Example.png"
sizes: {
...
large: {
file: "Code-Example-1024x621.png"
width: 1024
height: 621
mime_type: "image/png"
source_url: "https://wholesomecode.ltd/wp-content/uploads/2020/03/Code-Example-1024x621.png"
}
}
image_meta: {
aperture: "0"
credit: ""
camera: ""
caption: ""
created_timestamp: "0"
copyright: ""
focal_length: "0"
iso: "0"
shutter_speed: "0"
title: ""
orientation: "0"
}
}
post: null
source_url: "https://wholesomecode.ltdwp-content/uploads/2020/03/Code-Example.png"
Посмотрите это в действии на примере цикла записи WordPress Gutenberg.