Домой Каталог: Дополнения WP-Recall Public Recall Как написать проверку на наличие галереи у поста?
5ответ(ов) в теме
roma.hitryy
не в сети 3 года
На сайте с 14.08.2020
Участник
Тем 7
Сообщения 16
1
18:53
Версия WP-Recall: 16.20.2
Версия дополнения: 4.0.0

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

Никак не могу проверить, есть ли галерея у поста в шаблоне архива (задача - выводить первое изображение из галереи, если она есть).

Пробовал проверять с помощью has_shortcode( get_the_content(), 'gallery' ) и get_post_gallery() не вышло.

Как мне достучаться до галереи?
Интересует как проверить наличие галереи у поста и как получить ссылку на фотографию?

Спасибо!

0
Preci
не в сети 12 часов
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1643
2
19:46

get_post_meta( $post_id, 'rcl_post_gallery', 1 );

Если у поста есть галерея - то вернется массив id изображений

0
roma.hitryy
не в сети 3 года
На сайте с 14.08.2020
Участник
Тем 7
Сообщения 16
3
12:59

Preci сказал(а)
get_post_meta( $post_id, 'rcl_post_gallery', 1 );

Если у поста есть галерея - то вернется массив id изображений

К сожалению тоже не работает 🙁
Пробовал такую конструкцию: if ( get_post_meta( get_the_ID(), 'rcl_post_gallery', 1 ) )

При этом, когда вывожу все мета-поля, там нет поля "rcl_post_gallery".
$myvals = get_post_meta($post_id); foreach($myvals as $key=>$val) { echo $key . ' : ' . $val[0] . '<br/>'; }

Но, есть "recall_slider : 1". Это мне бы помогло с условием, но дальше мне нужно получить первую фото из галереи, и непонятно как это сделать.
Как же мне достучаться до галереи?

Буду благодарен любой помощи!

Редакции сообщения
27.01.2021 13:11roma.hitryyПричина: не указано
0
Preci
не в сети 12 часов
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1643
4
13:31

Мета поле rcl_post_gallery - новое, в нем указаны id изображений которые выводятся в галерее
Мета поле recall_slider - устаревшее, если оно указано - значит все изображения прикрепленные к записи выводятся в галерее

Так что если у вас указано поле recall_slider - тогда стандартными средствами wp получайте любое прикрепленное изображение к записи

0
roma.hitryy
не в сети 3 года
На сайте с 14.08.2020
Участник
Тем 7
Сообщения 16
5
16:39

Спасибо! Разобрался.
recall_slider странно себя ведет. Если отредактировать пост и удалить все фото, он все равно есть.

Решил задачу с помощью get_attached_media(); - железный способ 🙂

0
Вы не имеете права на публикацию сообщений в этой теме