Вывод основного фото из Набора изображений

InstantCMS 2.X
#1 22 января 2019 в 11:16
Есть поле Набор изображений. Как в списке вывести только Выделенное фото?
#2 22 января 2019 в 13:02
Выделить — это имеется ввиду вроде сделать больше остальных.
#3 22 января 2019 в 13:11
@elv, В моем посте написано все правильно. Прочитайте еще раз facepalm
#4 22 января 2019 в 13:58
Я понял о чем Вы, предлагал решение, но платное и изображения будут в слайдере. Ждите.
#5 22 января 2019 в 14:02

но платное и изображения будут в слайдере. Ждите.

@elv
Ну про слайдер я думал, но не хочется перегружать запросами систему. Хочется чтоб летало :)
#6 22 января 2019 в 14:07
В наборе изображения отображаются не очень на странице, добавьте разных размеров и проверьте с блоком справа или слева.
#7 22 января 2019 в 14:40

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

@elv
Не совсем понял зачем?
У меня список сейчас так: kupianapa.ru/board/transport
А запись так: kupianapa.ru/board/mercedes-benz-c-klass-200-w203s203cl203-145.html

Но приходится при добавлении записи выводить два поля: Фото (идет в список) и Дополнительные фото (в запись с выделением первого). т.е лишнее действие для пользователя.
#8 22 января 2019 в 14:46

Но приходится при добавлении записи выводить два поля: Фото (идет в список) и Дополнительные фото (в запись с выделением первого). т.е лишнее действие для пользователя.

Capitan
это да.
#9 22 января 2019 в 20:31
Capitan, пробуйте:
после строки (предполагаем, что вариант списка default_list): github.com/instantsoft/icms2/blob/master/templates/default/content/default_list.tpl.php#L24 вставить:
  1.  
  2. <?php if (!empty($item['fields']['photos'])){?>
  3. <div class="photos">
  4. <?php
  5. echo html_image($item['photos'], $fields['photos']['options']['size_teaser'], $item['title']);
  6. unset($item['fields']['photos']);
  7. ?>
  8. </div>
  9. <?php } ?>
  10.  
Будет выводится пресет первой картинки, который назначите на вывод для поля в списке.
Стилизуйте селектор "photos" как надо.
Имейте ввиду:я такой же юзер, как и вы, хоть и заглядываю иногда в код (возможно, лучше обратиться за решением к специалисту).
#10 22 января 2019 в 21:47
А я избавился от двух полей для изображений, это было большое неудобство.
Может поможет кому-то… дело было так… Я взял системное поле photo, изменил тип поля на "набор изображений" и теперь у меня одно поле с выводом главного фото в списке и возможностью его спокойно менять перетаскиванием при редактировании. Всё аккуратно теперь и понятно — в записи большое (выделенное) изображение и пресеты остальных, а в списке выводится то самое первое выделенное.
#11 22 января 2019 в 22:31

Я взял системное поле photo, изменил тип поля на "набор изображений..."

Yar
Когда-то так делал. Насколько помню, трюк работает и в обратном направлении (удалением переименованного вами поля и изменением системного имени поля с набором изображений на "photo"). Для нового типа контента, наверное, проканает. А вот, если изменять уже по ходу дела, картинки из старых записей не выведутся (надо перегружать).
#12 22 января 2019 в 23:05
Да, я вовремя это сделал, до запуска сайта. Системное имя не менял, я менял ему тип, поэтому всё везде работает исправно, включая виджеты.
#13 22 января 2019 в 23:43
Олег Васильевич я, Спасибо. Чуть доработал. Выводит еще и кол-во фото
  1. <?php if (!empty($item['fields']['photos'])){?>
  2. <div class="photos">
  3. <a href="<?php echo href_to($ctype['name'], $item['slug'].'.html'); ?>">
  4. <?php echo html_image($item['photos'], $fields['photos']['options']['size_teaser'], $item['title']); unset($item['fields']['photos']);?></a>
  5. <?php if (isset($item['photos'])){ ?>
  6. <div class="photos_count"><?php echo count(cmsModel::yamlToArray($item['photos']));?></div>
  7. <?php } ?>
  8. </div>
  9. <?php } ?>
#14 23 января 2019 в 00:55

Чуть доработал. Выводит еще и кол-во фото

Capitan
Только проверка существования поля, в этом случае не имеет смысла.

Не видел сайта, потому совет почти риторический: не пихайте на него (сайт) всякую лабуду лишь бы она занимала место.
Удачи!
#15 24 января 2019 в 01:13

Только проверка существования поля, в этом случае не имеет смысла.

Олег Васильевич я
А можете показать что лишнее.
RSS лента теперь не выводит фото. ей обязательно нужно поле изображение
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.