get_post_gallery()WP 3.6.0

Получает первую галерею из текста указанной записи/поста. Ищет шорткод [gallery] в тексте, обрабатывает его и возвращает массив данных картинок галереи.

Аналог функции get_post_galleries(), только получает данные первой галереи, а не всех имеющихся.

Не работает с блочным редактором (Гутенберг). Работает только для шоткода [gallery].

Работает на основе: get_post_galleries()
Основа для: get_post_gallery_images()
1 раз — 0.014229 сек (тормоз) | 50000 раз — 612.03 сек (тормоз) | PHP 7.0.4, WP 4.4.2
Хуки из функции

Возвращает

Строку|Массив.

  • массив - Список картинок галереи.
  • строку HTML - Если параметр $html=true то вернет строку - HTML код галереи.
  • false - Если на странице галерея отсутствует.

Использование

get_post_gallery( $post, $html );
$post(число/WP_Post) (обязательный)
ID или объект записи в тексте которой нужно найти первую галерею.
$html(логический)
В данных возвращать готовый HTML галереи или данные галереи в виде ID вложений и ссылок на картинки этих вложений.
По умолчанию: true

Примеры

0

#1 Получим первую галерею записи 2179

$gal = get_post_gallery( 2179, false );

/* $gal будет содержать 
Array
(
	[ids] => 6790,6789,6788
	[src] => Array
		(
			[0] => http://wp-kama.ru/wp-content/uploads/2016/02/image12-80x80.png
			[1] => http://wp-kama.ru/wp-content/uploads/2016/02/image11-80x80.png
			[2] => http://wp-kama.ru/wp-content/uploads/2016/02/image10-80x80.png
		)

)
*/

$gal = get_post_gallery( 2179, true );

/* $gal будет содержать строку HTML галереи
<div id='gallery-1' class='gallery galleryid-19 gallery-columns-3 gallery-size-thumbnail'><figure class='gallery-item'>
			<div class='gallery-icon landscape'>
				<a href='/article/sajt-na-konstruktore-wix/image12'><img width="80" height="80" src="/wp-content/uploads/2016/02/image12-80x80.png" class="attachment-thumbnail size-thumbnail" alt="image12" /></a>
			</div></figure><figure class='gallery-item'>
			<div class='gallery-icon landscape'>
				<a href='/article/sajt-na-konstruktore-wix/image11'><img width="80" height="80" src="/wp-content/uploads/2016/02/image11-80x80.png" class="attachment-thumbnail size-thumbnail" alt="image11" /></a>
			</div></figure><figure class='gallery-item'>
			<div class='gallery-icon landscape'>
				<a href='/article/sajt-na-konstruktore-wix/image10'><img width="80" height="80" src="/wp-content/uploads/2016/02/image10-80x80.png" class="attachment-thumbnail size-thumbnail" alt="image10" /></a>
			</div></figure>
</div>
*/

Список изменений

С версии 3.6.0 Введена.

Код get_post_gallery() WP 6.8.1

function get_post_gallery( $post = 0, $html = true ) {
	$galleries = get_post_galleries( $post, $html );
	$gallery   = reset( $galleries );

	/**
	 * Filters the first-found post gallery.
	 *
	 * @since 3.6.0
	 *
	 * @param array       $gallery   The first-found post gallery.
	 * @param int|WP_Post $post      Post ID or object.
	 * @param array       $galleries Associative array of all found post galleries.
	 */
	return apply_filters( 'get_post_gallery', $gallery, $post, $galleries );
}