При выводе галереи изображений, присоединенных к посту, шорткодом , в эту галерею попадает и изображение, являющееся миниатюрой поста. Однако если миниатюра поста уже выводится в начале записи, то смысла выводить ее еще раз нет. Поэтому не лишним будет способ исключения миниатюры поста из галереи. Вставляем в файл functions.php:
function exclude_thumbnail_from_gallery($null, $attr) { if (!$thumbnail_ID = get_post_thumbnail_id()) return $null; remove_filter('post_gallery', 'exclude_thumbnail_from_gallery'); if (!isset($attr['exclude']) || empty($attr['exclude'])) $attr['exclude'] = array($thumbnail_ID); elseif (is_array($attr['exclude'])) $attr['exclude'][] = $thumbnail_ID; $gallery = gallery_shortcode($attr); add_filter('post_gallery', 'exclude_thumbnail_from_gallery', 10, 2); return $gallery; } add_filter('post_gallery', 'exclude_thumbnail_from_gallery', 10, 2);
Теперь миниатюра поста всегда будет исключаться из галереи.
Есть способ и более простой, он подходит тем, кто автоматически выводит галерею изображений, встроив функцию вывода в файл single.php. В этом случае чтобы исключить миниатюру из галереи, в файле single.php нужно использовать:
<?php echo do_shortcode('[ gallery exclude="' . get_post_thumbnail_id( $post->ID ) . '"]'); ?>