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

Материал из Umicms
Версия от 09:42, 29 октября 2010; Gordeev (обсуждение | вклад) (Новая страница: «По умолчанию для объекта каталога предполагается одна фотография. Чтобы сделать их неско…»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к:навигация, поиск

По умолчанию для объекта каталога предполагается одна фотография. Чтобы сделать их несколько, необходимо в модуле «Шаблоны данных» для нужного типа товара в группе полей «Изображения» добавить дополнительные поля типа «Изображение». Идентификаторы полей назовем, например, 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