Выводим все вложенные картинки к посту WordPress

Немного лирики

Иногда у WordPress-разработчика может возникнуть острая необходимость показать все вложения, заданного типа. Например, картинки. По тому же принципу, как это реализовано в стандартном системном шорткоде фотогалерии "движка".

WordPress вложения

Пример медиа-вложений, прикрепленных к записи. Снимок экрана административной части сайта дан выше.

Смотрим сниппет ниже

Код для вывода всех "вложенных" изображений поста:

<?php
/*
 * Шорткод регистрируйте/не регистрируйте - это уже по желанию и необходимости.
 */
add_shortcode('attachments', 'print_attachments');

/*
 * Выводим картинки.
 */
function print_attachments() {
    // Начальные параметры выборки.
    $CurrentThumb = array(
        'post_status'    => null,
        'post_type'      => 'attachment', // Тип: аттач.
        'post_parent'    => get_the_ID(), // Родительский постовой.
        'post_mime_type' => 'image', // Картинка.
        'order'          => 'ASC' // Сортировка ASC или DESC?
    );
    // Производим выборку.
    $post_images = get_posts($CurrentThumb);
    // "Печатный" цикл.
    if ($post_images) :
        foreach ($post_images as $a) :
            print '<img src="'.wp_get_attachment_url($a->ID).'" />';
        endforeach;
    endif;
}
?>

Примечания отсутствуют. Выше и так все тщательно "разжевано".





© 2012-2014 Druweb.ru. Вы можете спокойно копировать любые материалы сайта только при наличии обратной ссылки.