Как сделать несколько фотографий для одного товара и выводить их в всплывающем окне (tpl-шаблонизатор) — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
 
Строка 40: Строка 40:
 
Global Configuration  
 
Global Configuration  
 
Slideshow Options
 
Slideshow Options
[[Категория:Модуль Каталог]]
+
[[Категория:Модуль Каталог]][[Категория:Верстка в TPL]]

Текущая версия на 13:27, 5 июня 2013

По умолчанию для объекта каталога предполагается одна фотография. Чтобы сделать их несколько, необходимо в модуле «Шаблоны данных» для нужного типа товара в группе полей «Изображения» добавить дополнительные поля типа «Изображение». Идентификаторы полей назовем, например, photo1, photo2 и т.д. Теперь необходимо в шаблоне вывода объекта каталога (по умолчанию это \tpls\catalog\default.tpl ) указать вывод не одной фотографии, а нескольких. Меняем код шаблона

$FORMS['view_block'] = <<<END
%data getProperty(%id%, 'photo', 'catalog_view')%
на
$FORMS['view_block'] = <<<END
%data getProperty(%id%, 'photo1', 'catalog_view')%
%data getProperty(%id%, 'photo2', 'catalog_view')%
...

В результате, на странице сайта будет отображаться несколько изображений товара. Теперь необходимо сделать так, чтобы при клике на изображение оно открывалось в полный размер лайтбоксе. Скачиваем архив: http://www.dolem.com/lytebox/ Разархивируем файлы по соответствующим папкам в системе: Скрипт lytebox.js сохраняем в папку "/js" Стиль lytebox.css сохраняем в папку "/css/cms" Копируем изображения в папку images/lightbox

Подключаем js и css в шаблоне дизайна для объектов каталога в теге <head>:

<link rel="stylesheet" href="/css/cms/lytebox.css" type="text/css" media="screen" /> 
<script type="text/javascript" language="javascript" src="/js/lytebox.js"></script>

В шаблоне tpls/data/catalog_view.tpl меняем строку

%system makeThumbnail(%filepath%, 200, 'auto', 'catalog_view')%

на

<a href="%src%" rel="lytebox[vacation]" title="%title%">%system makeThumbnail(%filepath%, 200, 'auto', 'catalog_view')%</a>

Прописываем в lytebox.css пути изображениям, используемым скриптом, в папку images/lightbox.

Настройки Lytebox производятся в файле lytebox.js, блоки: Global Configuration Slideshow Options