SimpleGallery - Вывод изображений
- Дополнения
- SimpleGallery
- Вывод изображений
SimpleGallery - Вывод изображений
Для вывода галереи используется DocLister с контроллером onetable. Для большего удобства вызов DocLister производится через сниппет-обертку sgLister; соответственно при вызове можно использовать любые параметры DocLister. В sgLister также производится дополнительная обработка выводимых данных, которая реализована с помощью параметра prepare при вызове DocLister.
Параметры сниппета sgLister
imageField
Имя поля с изображением.
Значение по умолчанию - sg_image.
parents
Для вывода изображений из указанных ресурсов.
Возможные значения - id ресурсов, разделенные запятой.
Значение по умолчанию - id ресурса в котором вызывается сниппет.
documents
Для вывода отдельных изображений из всех галерей.
Возможные значения - id записей в таблице sg_images, разделенные запятой.
Значение по умолчанию - пусто.
BeforePrepare, AfterPrepare
Обработка данных до того, как они будут обработаны сниппетом sgLister, и после.
Возможные значения - имена сниппетов, через запятую.
Значени по умолчанию - пусто.
thumbSnippet
Имя сниппета для генерации превью при выводе.
Возможные значения: имя сниппета, например, phpthumb.
Значение по умолчанию - пусто.
thumbOptions
Параметры, передаваемые сниппету, указанному в параметре thumbSnippet. Для генерации единичного превью указывается строка с параметрами:
&thumbSnippet=`phpthumb` &thumbOptions = `w=400&h=400&zc=1`
Путь к картинке будет доступен в шаблоне через плейсхолдер [+thumb.sg_image+]
Для генерации нескольких превью параметры можно задавать в json-формате:
&thumbSnippet=`phpthumb`
&thumbOptions = `{
"default":"w=400&h=400&zc=1",
"small":"w=50&h=50&zc=1",
"medium":"w=200&h=200&zc=1"
}`
Пути к картинкам будут доступны в шаблоне через плейсхолдеры:
- [+thumb.sg_image+]
- [+thumb_small.sg_image+]
- [+thumb_medium.sg_image+]
Значение по умолчанию - пусто.
tpl
Шаблон для вывода.
Возможные значения - имя шаблона, указанное по правилам задания шаблонов в DocLister.
Плейсхолдеры
Данные таблицы sg_images:
- [+sg_id+] — id картинки;
- [+sg_index+] — позиция в галерее;
- [+sg_image+] — ссылка на картинку;
- [+sg_title+] — название картинки;
- [+sg_description+] — описание картинки;
- [+sg_properties+] - информация об изображении в формате json;
- [+sg_add+] — дополнительное поле;
- [+sg_isactive+] — флажок, чтобы скрыть какие-то картинки из вывода;
- [+sg_rid+] — id ресурса, которому принадлежит картинка (parentField);
- [+sg_createdon+] — дата добавления картинки.
Для вывода экранированных данных (параметр e в DocLister):
- [+e.имя_поля+]
Информация об изображении (при использовании сниппета sgLister):
- [+properties.width+] - ширина в пикселях;
- [+properties.height+] - высота в пикселях;
- [+properties.size+] - размер файла.
Превью (при использовании сниппета sgLister и заданных параметрах thumbSnippet и thumbOptions):
- [+thumb.sg_image+] - ссылка на основной файл превью;
- [+thumb_имя.sg_image+] - ссылка на дополнительный файл превью;
- [+thumb.width.sg_image+], [+thumb_имя.width.sg_image+] - ширина превью;
- [+thumb.height.sg_image+], [+thumb_имя.height.sg_image+] - высота превью.
Также доступны плейсхолдеры, устанавливаемые сниппетом DocLister.
Пример
[+pages+] [!sgLister? &ownerTPL=`@CODE:[+dl.wrap+]` &thumbSnippet=`sgThumb` &thumbOptions=`400x300` &display=`16` &paginate=`pages` &PrevNextAlwaysShow=`1` &tpl=`@CODE:<a class="thumbnail" href="[+sg_image+]" target="_blank">` &TplWrapPaginate=`@CODE:` &TplCurrentPage=`@CODE:</a>