/ Wordpress / Несколько миниатюр записи

Несколько миниатюр записи

HIT

11.04.2017

4432

В некоторых случаях необходимо, чтобы у записи было несколько миниатюр. Например, если запись это товар с несколькими изображениями. Добавим эту возможность при редактировании записи.

После установки плагина, необходимо регистрировать (в functions.php) каждую дополнительную миниатюру:

//Добавление дополнительной миниатюры
add_filter( 'kdmfi_featured_images', function( $featured_images ) {
    $args = array(
        'id' => 'featured-image-2',
        'desc' => 'Your description here.',
        'label_name' => 'Featured Image 2',
        'label_set' => 'Set featured image 2',
        'label_remove' => 'Remove featured image 2',
        'label_use' => 'Set featured image 2',
        'post_type' => array( 'post' )
    );

    $featured_images[] = $args;

    return $featured_images;
});

Выводятся дополнительные миниатюры так:

kdmfi_the_featured_image( 'featured-image-2', 'full' );

Плагин Multiple Featured Images (10 000 скачиваний) не содержит лишнего кода, отлично подходит для случаев когда нам точно известно количество необходимых дополнительных миниатюр.

Сделать добавление дополнительных миниатюр в виде единой галереи (как в woocommerce) можно с помощью плагина Featured Galleries (4000 скачиваний)

После установки в редакторе записи появляется виджет справа, в него и добавляем миниатюры.

Выводятся изображения таким образом:

<?php $galleryArray = get_post_gallery_ids($post->ID); ?>
foreach ($galleryArray as $id) { ?>

	<img src="<?php echo wp_get_attachment_image_url( $id, 'thumbnail' ); ?>">

<?php } ?>

thumbnail — задаем размер миниатюры.

Если нужно применить данную возможность для произвольных типов записей — нужно добавить функцию:

function add_featured_galleries_to_ctp( $post_types ) {
    array_push($post_types, 'custom_post_type'); //array('post','page')
    return $post_types;
}
add_filter('fg_post_types', 'add_featured_galleries_to_ctp' );

Был случай, когда в произвольных типах записей в админке не открывалось меню добавления изображений. Решил проблему следующим образом: отключил условие проверки на тип записи в файле featured-galleries/includes/controller.php (строка 51).

Условие — есть ли изображения галереи:

<?php $galleryArray = get_post_gallery_ids($post->ID); ?>
	
<?php if ( !empty($galleryArray) ): ?>
	
<h2>Галерея изображений</h2>

<?php foreach ($galleryArray as $id) { ?>

<a href="<?php echo wp_get_attachment_image_url( $id, 'full' ); ?>"><img src="<?php echo wp_get_attachment_image_url( $id, 'medium' ); ?>"></a>

<?php } ?>
	
<?php else: ?>
  
<?php the_post_thumbnail('medium'); ?>
  
<?php endif; ?>

Обнаружил момент, что при выборе изображений для галереи отсутствует стандартная фильтрация (или дополнительная) элементов медиабиблиотеки. Это исправляется следующей функцией:

function show_fg_sidebar( $show_sidebar ) {
    return true; // ($show_sidebar comes in a false)
} add_filter( 'fg_show_sidebar', 'show_fg_sidebar' );

Этот плагин устарел, рекомендуется использовать аналогичный.

[site-socialshare]
  • Похожие записи
  • Комментарии
  • Вложения
Выводим записи у которых нет миниатюры

Выводим записи у которых нет миниатюры

Иногда нужно вывести все записи в которых отсутствуют миниатюры. Например, для интернет-магазина с множеством товаров. Сделаем это! Создаем страницу вывода Создадим шаблон страницы none-img.php, вначале обязательно прописываем название шаблона: <?php Читать далее »

Адаптивные изображения (атрибут srcset)

Адаптивные изображения (атрибут srcset)

Давно интересовал вопрос адаптивности изображений с помощью атрибута srcset. Как это работает и как правильно настроить. Пришло время это выяснить. Теория srcset В атрибуте srcset выводятся все варианты миниатюры и Читать далее »

Галерея изображений товара в категории

Галерея изображений товара в категории

Создадим переключающиеся изображения товара при наведении мыши, либо галерею изображений товара в шаблоне категории. Под галереей изображений (Featured Images) понимаются дополнительные изображения помимо основного изображения. Выводим дополнительные изображения function woocommerce_feature_gallery() Читать далее »

/

Добавить комментарий

Пока нет комментариев. Будь первым!

Несколько миниатюр записи
Меню для мобильной версии
Рекомендации для васМеню для мобильной версииOpttour.ru
Спасибо! Наш менеджер свяжется с Вами в течении 5 минут.