Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Захват массива изображений и вывод в галерее (WP)

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Lionsez
Отправлено: 28 Марта, 2018 - 14:06:49
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Март 2018  


Помог: 0 раз(а)




Здравствуйте. Платформа WordPress. Проблема с кодом php-шаблона, в котором должна выводиться галерея. То есть в записи WP я ввожу изображения (галерею) и они должны выводиться через следующий код:

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $ids = get_field( get_the_ID(), 'photo_ms' );
  3. if( $images ): ?>
  4. <?PHP echo do_shortcode('[gallery columns="3" link="file" ids=" . $ids . "]'); ?>
  5. <?PHP endif; ?>


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

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $ids = get_post_meta( get_the_ID(), 'fav_photos', true );
  3. $selected_images = '';
  4. if( !empty($ids) ) {
  5.  foreach ($ids as $key => $value) {
  6.  $selected_images .= $key . ',';
  7.  }
  8. }
  9. echo do_shortcode('[gallery columns="3" size="model-gallery" link="file" ids="' . $selected_images . '"]'); ?>
 
 Top
Lionsez
Отправлено: 28 Марта, 2018 - 16:47:36
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Март 2018  


Помог: 0 раз(а)




Решено.

PHP:
скопировать код в буфер обмена
  1. $images = get_field('photo_ms');
  2. if( $images ){
  3. foreach( $images as $image ){
  4. $ids[]=$image['ID'];
  5. }
  6. $ids=implode(',',$ids);
  7. echo do_shortcode('[gallery columns="4" link="file" ids=" '. $ids .' "]');                                      }
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB