get_attached_media()
Получает вложения (картинки, видео, аудио) прикрепленные к записи (посту). Получает объекты данных в виде массива.
Эта функция возвращает только те вложения, которые были загружены для поста (которые прикреплены к посту).
Например, мы загрузили картинку в пост A (ID 1), а затем добавили эту картинку в контент поста B (ID 2). Тогда, следующий код выдаст пустой массив:
$media = get_attached_media( 'image', 2 ); var_dump( $media );
Объекты WP_Post в массиве который вернет функция будут упорядочены по убыванию (ASC) по полю menu_order
.
Хуки из функции
Возвращает
WP_Post[]
. Массив объектов, найденных вложений или пустой массив: array()
Использование
$attach = get_attached_media( $type, $post );
- $type(cтрока) (обязательный)
- Тип вложений, которые нужно получить. Например: 'image', 'audio', 'video', 'video/mp4'.
- $post(число/WP_Post)
- ID записи вложения которой нужно получить.
По умолчанию: текущий пост
Примеры
#1 Получим вложения поста любого типа
Можно получить все прикрепленные вложения поста, независимо от типа. Для этого в первом параметру нужно указать пустую строку:
$media = get_attached_media( '' ); // или $media = get_attached_media( '', 102 );
#2 Получим вложения-картинки текущего поста
В этом примере мы получим данные картинок прилепленных к записи с ID=2018:
$media = get_attached_media( 'image', 2018 ); print_r( $media );
Этот код выведет на экран что-то такое:
Array ( [2024] => WP_Post Object ( [ID] => 2024 [post_author] => 1 [post_date] => 2013-01-09 19:46:33 [post_date_gmt] => 2013-01-09 15:46:33 [post_content] => [post_title] => ajax в WordPress [post_excerpt] => [post_status] => inherit [comment_status] => open [ping_status] => open [post_password] => [post_name] => ajax-in-wp [to_ping] => [pinged] => [post_modified] => 2013-01-09 19:46:33 [post_modified_gmt] => 2013-01-09 15:46:33 [post_content_filtered] => [post_parent] => 2018 [guid] => http://wp-kama.ru/wp-content/uploads/2013/01/ajax-in-wp.jpg [menu_order] => 0 [post_type] => attachment [post_mime_type] => image/jpeg [comment_count] => 0 [filter] => raw ) [2000] => WP_Post Object ( [ID] => 2024 ... ) )
#3 Получим первую картинку-вложение прикрепленную к записи
Этот код показывает, как получить первую картинку, которая прикреплена к посту с ID = 2018:
$media = get_attached_media( 'image', 2018 ); $media = array_shift( $media ); // ссылка на картинку $image_url = $media->guid; // выведем картинку в браузере echo '<img src="'. $image_url .'" />';
Список изменений
С версии 3.6.0 | Введена. |