Как получить изображения, прикрепленные к записи
Можно ли программно получить изображения, прикрепленные к записи? Я работаю над пользовательским шаблоном (моим первым) и мне нужно отображать изображения из записи определенным способом (первое изображение как заглавное, а остальные только в скрытых тегах img, которые будут видны через лайтбокс-слайдер).
Существует ли какая-то функция типа get_post_attachments('type'=>'image')
, результат которой я мог бы перебрать в цикле?
Спасибо за помощь

Вы можете использовать функцию get_posts()
(Ссылка на Codex для получения вложений записи).
<?php
$args = array(
'post_type' => 'attachment',
'post_mime_type' => 'image',
'numberposts' => -1,
'post_status' => null,
'post_parent' => $post->ID
);
$attached_images = get_posts( $args );
?>

Этот код получает все изображения, прикреплённые к записи:
$args = array( 'post_type' => 'attachment', 'numberposts' => -1, 'post_status' => null, 'post_mime_type' => 'image', 'post_parent' => $post->ID );
$attachments = get_posts( $args );
if ( $attachments ) {
foreach ( $attachments as $attachment ) {
...делаем что-то
}
}
Также ознакомьтесь с функцией wp_get_attachment_image() и связанными функциями, это поможет вам начать работу.

Обратите внимание, что поле post_parent
НЕ регистрирует изображение, если оно не загружается и не добавляется к записи одновременно.
Это означает, что любое изображение, уже загруженное в медиатеку, будет иметь значение 0 (ноль) в поле post_parent
, даже если оно прикреплено к записи.
Это неудобно. Единственный способ получить ВСЕ прикрепленные к записи изображения — это разобрать HTML-код и извлечь теги <img>
из содержимого.
