Gallery3xEmbeds

Компонент Gallery3x начиная с версии 3.2.1 поставляется со сниппетом [[!Gallery3xEmbeds]] , который выводит на страницах сайта встраиваемые объекты (embed) — карты, виджеты, плееры и любой iframe-контент, добавленный во вкладке «Embed G3x» ресурса. 

 Ключевая особенность 

 Каждый embed добавляется в админке в одном из двух режимов: 

 

 

 Ссылка — вы вставляете ссылку (например, на Яндекс.Карты или Google Карты), компонент распознаёт её и сам строит безопасный <iframe> . 

 

 

 Код вставки — вы вставляете готовый HTML-код встраивания (кнопка «Поделиться → Встроить» на сайте-источнике), он выводится как есть. 

 

 

 Сниппет отдаёт в чанк уже готовый HTML embed в плейсхолдере [[+embed_html]] с адаптивной обёрткой (ширина 100%, высота из поля «Высота», по умолчанию 400px). 

 

 Сниппет [[!Gallery3xEmbeds]] 

 Основная задача — получить все активные embed указанного ресурса, отсортировать их и передать в чанки для оформления. 

 

 

 

 Параметр 

 По умолчанию 

 Описание 

 

 

 

 

 &resource 

 ID текущего ресурса 

 ID ресурса, из которого выводить embed. Используется, если &parents и &resources не заданы. 

 

 

 &parents 

 null 

 Список ID родительских ресурсов через запятую. Выбирает embed из них и всех дочерних. 0 — со всего сайта. 

 

 

 &resources 

 null 

 Список ID ресурсов через запятую. ID с минусом (-) исключает ресурс. Имеет приоритет над &parents . 

 

 

 &tplOuter 

 tpl.Gallery3x.Embed.outer 

 Чанк-обёртка всего списка. 

 

 

 &tplItem 

 tpl.Gallery3x.Embed.item 

 Чанк одного элемента ( игнорируется в режиме Fenom ). 

 

 

 &fenom 

 0 

 Если 1 и установлен pdoTools — режим Fenom. Чанк &tplItem не используется, а в &tplOuter передаётся массив {$embeds} для обработки в {foreach} . 

 

 

 &group 

 '' 

 Фильтр по группе (можно несколько через запятую). 

 

 

 &limit 

 0 

 Ограничение количества. 0 — без ограничений. 

 

 

 &offset 

 0 

 Сдвиг выборки (для постраничного вывода). 

 

 

 &sortby 

 position 

 Поле сортировки. 

 

 

 &sortdir 

 ASC 

 Направление сортировки (ASC или DESC). 

 

 

 &showInactive 

 0 

 Если 1 — выводятся и выключенные в админке embed. 

 

 

 &where 

 '' 

 JSON-строка с дополнительными условиями выборки. 

 

 

 &debug 

 0 

 Если 1 — вместо вывода показывается массив подготовленных данных. 

 

 

 

 Доступные плейсхолдеры 

 Сниппет передаёт в чанк все поля записи embed. Главный — [[+embed_html]] (готовый к выводу HTML). 

 

 

 [[+embed_html]] — готовый HTML embed с адаптивной обёрткой (это и нужно выводить). 

 

 

 [[+id]] — ID записи. 

 

 

 [[+title]] — заголовок. 

 

 

 [[+description]] — описание. 

 

 

 [[+mode]] — режим: url или code . 

 

 

 [[+url]] — исходная ссылка (режим «Ссылка»). 

 

 

 [[+code]] — код вставки (режим «Код вставки»). 

 

 

 [[+provider]] — провайдер ( yandex_map , google_map ). 

 

 

 [[+embed_id]] — итоговый src для iframe (режим «Ссылка»). 

 

 

 [[+height]] — высота в px (пусто = 400). 

 

 

 [[+thumbnail_url]] — URL превью (если задано). 

 

 

 [[+group]] — группы (через || ). 

 

 

 [[+position]] , [[+active]] , [[+special]] — позиция, активность, «особенный». 

 

 

 [[+extra_text]] , [[+extra_text2]] , [[+extra_num]] , [[+extra_date]] — дополнительные поля. 

 

 

 Примеры 

 [[!Gallery3xEmbeds]] 

 Вывести все embed текущего ресурса. 

 [[!Gallery3xEmbeds?

 &group=`maps`]] 

 Только embed из группы maps . 

 [[!Gallery3xEmbeds? &resource=`15`

 &limit=`3`]] 

 Три embed с ресурса №15. 

 [[!Gallery3xEmbeds? &fenom=`1` &tplOuter=`

 tpl.Gallery3x.Embed.outer.fenom`]] 

 Режим Fenom — обработка массива {$embeds} в цикле внутри чанка-обёртки. 

 [[!Gallery3xEmbeds? &debug=`1`]] 

 Отладка — показывает все подготовленные данные.