Добрый день!
Есть сайт, на котором выводятся товары, вот например http://vinokuram.ru/самогонный-аппарат-«катюша-люкс»-17л-с-сухопарником. У ноды есть главная картинка и вторичные картинки (внизу).
По ТЗ, требуется чтобы fancyBox работал не только на картинки внизу, но и на "главную" картинку ноды. В админке создан тип материала "Товар" со стандартным полем "Изображение", но ковыряние в его настройках так и не позволяет сделать чтобы первая картинка которая грузится при создании ноды, также обзавелась фансибоксом.
В каком направлении смотреть?
Заранее спасибо!
Комментарии
В этом модуле есть требуемый функционал https://www.drupal.org/project/flexslider
Только настраивайте терпеливо.
Спасибо, а возможно ли просто чуть изменив что-то в шаблоне и не связываясь с модулем?
Вот в файле node--item.tpl.php имеем следующее:
а) для картинки которая не увеличивается по клику php-код:
<?php
print theme('image_style', array('style_name' => '250x350', 'path' => $content['field_image']['#items'][0]['uri']));
?>
б) для блока картинкок, которые увеличиваются:
<?php
print render($content['field_image']);?>
Ощущаю что надо написать в а) нечто близкое к print render($content['field_image'][0]) чтобы получить самую первую картинку, но от чего-то не прокатывает. Исследование содержимого $content['field_image'] с помощью var_dump пока что ставит меня в тупик. "Истина всё-таки где-то рядом", ИМХО.
====
Итак, удалось сделать чтобы картинка выводилась большая по клику и в главной фотке:
<?php
<a
href="http://vinokuram.ru/sites/default/files/<?php echo $content['field_image']['#items'][0]['filename'] ?>" title="<?php echo $node->title; ?>" class="fancybox" data-fancybox-group="<?= $var1 ?>">
<?php print theme('image_style', array('style_name' => '250x350', 'path' => $content['field_image']['#items'][0]['uri'])); ?>
</a>
?>
Однако, чтобы связать фэнсибокс на главной и на вторичных картинках, мне откуда-то надо взять значение для атрибута data-fancybox-group (типа "gallery-post-389"). Пытался сделать хак в модуле Fancybox (файл fancybox.theme.inc, функция theme_fancybox_image_formatter($variables)), чтобы оттуда достать переменную $gid в которой и хранится идентификатор группы ФБ (и вписать его руками в код шаблона), но оно почему-то не вытаскивается(((
Где еще взять data-fancybox-group можно для данной страницы-ноды, чтобы связать фэнсибоксы?