← К глоссарию

Сниппет

Фрагмент кода, выполняемый в определённом месте шаблона для вывода данных.

Сниппет (Snippet) — это кусочек PHP-кода в MODX, который вызывается в шаблоне и возвращает результат. Например, сниппет pdoResources выводит список дочерних ресурсов, а сниппет отправки формы обрабатывает заявку.

Пример использования

В шаблоне пишется вызов: Array ( [return] => chunks [id] => 14465 [type] => document [contentType] => text/html [pagetitle] => tgAutoPost [longtitle] => [description] => [alias] => tgautopost [alias_visible] => 1 [link_attributes] => [published] => 1 [pub_date] => 0 [unpub_date] => 0 [parent] => 0 [isfolder] => 0 [introtext] => [richtext] => 0 [template] => 0 [menuindex] => 27 [searchable] => 0 [cacheable] => 1 [createdby] => 1 [createdon] => 1785903245 [editedby] => 1 [editedon] => 1785906156 [deleted] => 0 [deletedon] => 0 [deletedby] => 0 [publishedon] => 1785903240 [publishedby] => 1 [menutitle] => [donthit] => 0 [privateweb] => 0 [privatemgr] => 0 [content_dispo] => 0 [hidemenu] => 1 [class_key] => modDocument [context_key] => web [content_type] => 1 [uri] => tgautopost.html [uri_override] => 0 [hide_children_in_tree] => 0 [show_in_tree] => 1 [properties] => [idx] => 1 [link] => ) Array ( [return] => chunks [id] => 14464 [type] => document [contentType] => text/html [pagetitle] => Автопостинг на стену профиля ВКонтакте [longtitle] => Автопостинг на стену ВКонтакте [description] => Скрипт автопостинга на стену профиля ВКонтакте. Автоматическая публикация постов по расписанию, отложенный постинг и управление очередью. Настройка интервалов, добавление медиафайлов и ссылок. Решение для SMM, бизнеса и личных страниц. Экономия времени и стабильный выход контента. [alias] => avtoposting-na-stenu-profilya-vkontakte [alias_visible] => 1 [link_attributes] => [published] => 1 [pub_date] => 0 [unpub_date] => 0 [parent] => 318 [isfolder] => 0 [introtext] => Скрипт автопостинга на стену профиля ВКонтакте автоматизирует публикацию постов. Настройте расписание, загрузите контент и забудьте о рутине. Подходит для личных страниц, SMM-специалистов и малого бизнеса. Простая установка, гибкие настройки очереди постов и стабильная работа без банов. [richtext] => 1 [template] => 16 [menuindex] => 3 [searchable] => 1 [cacheable] => 1 [createdby] => 1 [createdon] => 1785297180 [editedby] => 1 [editedon] => 1785305046 [deleted] => 0 [deletedon] => 0 [deletedby] => 0 [publishedon] => 1785297180 [publishedby] => 1 [menutitle] => [donthit] => 0 [privateweb] => 0 [privatemgr] => 0 [content_dispo] => 0 [hidemenu] => 0 [class_key] => modDocument [context_key] => web [content_type] => 1 [uri] => avtoposting-na-stenu-profilya-vkontakte.html [uri_override] => 0 [hide_children_in_tree] => 0 [show_in_tree] => 1 [properties] => [idx] => 2 [link] => ) Array ( [return] => chunks [id] => 14463 [type] => document [contentType] => text/html [pagetitle] => Автопостинг в Max с сайта [longtitle] => Автопостинг в Max [description] => Скрипт автопостинга в Max с сайта. Автоматическая публикация записей из RSS-ленты или API вашего сайта в соцсеть Max. Настройка шаблонов, фильтрация по категориям, управление расписанием. Готовое решение для новостных порталов, интернет-магазинов и корпоративных блогов. [alias] => avtoposting-v-max-s-sajta [alias_visible] => 1 [link_attributes] => [published] => 1 [pub_date] => 0 [unpub_date] => 0 [parent] => 318 [isfolder] => 0 [introtext] => Скрипт автопостинга в Max с сайта автоматизирует перенос контента на вашу страницу в соцсети Max. Публикуйте новости, статьи и объявления сразу после их появления на сайте. Настройка правил, фильтры по рубрикам и гибкое расписание. Экономия времени для СМИ, блогов и бизнеса. [richtext] => 1 [template] => 16 [menuindex] => 2 [searchable] => 1 [cacheable] => 1 [createdby] => 1 [createdon] => 1785297040 [editedby] => 1 [editedon] => 1785305111 [deleted] => 0 [deletedon] => 0 [deletedby] => 0 [publishedon] => 1785297000 [publishedby] => 1 [menutitle] => [donthit] => 0 [privateweb] => 0 [privatemgr] => 0 [content_dispo] => 0 [hidemenu] => 0 [class_key] => modDocument [context_key] => web [content_type] => 1 [uri] => avtoposting-v-max-s-sajta.html [uri_override] => 0 [hide_children_in_tree] => 0 [show_in_tree] => 1 [properties] => [idx] => 3 [link] => ) Array ( [return] => chunks [id] => 14462 [type] => document [contentType] => text/html [pagetitle] => Автопостинг в группу ВКонтакте с сайта [longtitle] => Автопостинг в группу ВКонтакте [description] => Скрипт автопостинга в группу ВКонтакте с сайта. Автоматическая публикация записей из RSS-ленты или API в паблик ВК. Гибкие шаблоны постов, фильтрация по категориям, управление расписанием и хештегами. Готовое решение для новостных порталов, магазинов и городских сообществ. [alias] => avtoposting-v-gruppu-vkontakte [alias_visible] => 1 [link_attributes] => [published] => 1 [pub_date] => 0 [unpub_date] => 0 [parent] => 318 [isfolder] => 0 [introtext] => Скрипт автопостинга в группу ВКонтакте с сайта автоматически переносит новости, статьи и товары в ваш паблик. Публикации выходят сразу после появления на сайте. Настройка шаблонов, фильтры по рубрикам и расписание. Идеально для СМИ, блогов и интернет-магазинов. [richtext] => 1 [template] => 16 [menuindex] => 1 [searchable] => 1 [cacheable] => 1 [createdby] => 1 [createdon] => 1785296958 [editedby] => 1 [editedon] => 1785305165 [deleted] => 0 [deletedon] => 0 [deletedby] => 0 [publishedon] => 1785296940 [publishedby] => 1 [menutitle] => [donthit] => 0 [privateweb] => 0 [privatemgr] => 0 [content_dispo] => 0 [hidemenu] => 0 [class_key] => modDocument [context_key] => web [content_type] => 1 [uri] => avtoposting-v-gruppu-vkontakte.html [uri_override] => 0 [hide_children_in_tree] => 0 [show_in_tree] => 1 [properties] => [idx] => 4 [link] => ) Array ( [return] => chunks [id] => 2509 [type] => document [contentType] => text/html [pagetitle] => vkuserpost [longtitle] => [description] => [alias] => vkuserpost [alias_visible] => 1 [link_attributes] => [published] => 1 [pub_date] => 0 [unpub_date] => 0 [parent] => 0 [isfolder] => 0 [introtext] => [richtext] => 0 [template] => 0 [menuindex] => 22 [searchable] => 0 [cacheable] => 1 [createdby] => 1 [createdon] => 1785130096 [editedby] => 1 [editedon] => 1785220737 [deleted] => 0 [deletedon] => 0 [deletedby] => 0 [publishedon] => 1785220737 [publishedby] => 1 [menutitle] => [donthit] => 0 [privateweb] => 0 [privatemgr] => 0 [content_dispo] => 0 [hidemenu] => 1 [class_key] => modDocument [context_key] => web [content_type] => 1 [uri] => vkuserpost.html [uri_override] => 0 [hide_children_in_tree] => 0 [show_in_tree] => 1 [properties] => [idx] => 5 [link] => ) Array ( [return] => chunks [id] => 2522 [type] => document [contentType] => text/html [pagetitle] => MECCHA CHAMELEON [longtitle] => MECCHA CHAMELEON — купить ключ Steam, цена и активация [description] => Купить MECCHA CHAMELEON в Steam. Лицензионный ключ с мгновенной доставкой на email. Экшены/шутеры, лучшая цена, активация в России без ограничений. Заказ онлайн — безопасно и быстро. [alias] => meccha-chameleon-327 [alias_visible] => 1 [link_attributes] => [published] => 1 [pub_date] => 0 [unpub_date] => 0 [parent] => 327 [isfolder] => 0 [introtext] => MECCHA CHAMELEON — экшены/шутеры для ПК. Уникальный геймплей, атмосферный мир и регулярные обновления. Ключ Steam с моментальной выдачей после оплаты. Узнайте где купить дешевле, системные требования и получите скидку. [richtext] => 1 [template] => 22 [menuindex] => 0 [searchable] => 1 [cacheable] => 1 [createdby] => 0 [createdon] => 1785215406 [editedby] => 1 [editedon] => 1785215424 [deleted] => 0 [deletedon] => 0 [deletedby] => 0 [publishedon] => 1785215424 [publishedby] => 1 [menutitle] => [donthit] => 0 [privateweb] => 0 [privatemgr] => 0 [content_dispo] => 0 [hidemenu] => 0 [class_key] => modDocument [context_key] => web [content_type] => 1 [uri] => meccha-chameleon-327.html [uri_override] => 0 [hide_children_in_tree] => 0 [show_in_tree] => 1 [properties] => [idx] => 6 [link] => ) Array ( [return] => chunks [id] => 2513 [type] => document [contentType] => text/html [pagetitle] => парс [longtitle] => [description] => [alias] => pars [alias_visible] => 1 [link_attributes] => [published] => 1 [pub_date] => 0 [unpub_date] => 0 [parent] => 0 [isfolder] => 0 [introtext] => [richtext] => 0 [template] => 0 [menuindex] => 26 [searchable] => 0 [cacheable] => 1 [createdby] => 1 [createdon] => 1785173269 [editedby] => 1 [editedon] => 1785238006 [deleted] => 0 [deletedon] => 0 [deletedby] => 0 [publishedon] => 1785173220 [publishedby] => 1 [menutitle] => [donthit] => 0 [privateweb] => 0 [privatemgr] => 0 [content_dispo] => 0 [hidemenu] => 1 [class_key] => modDocument [context_key] => web [content_type] => 1 [uri] => pars.html [uri_override] => 0 [hide_children_in_tree] => 0 [show_in_tree] => 1 [properties] => [idx] => 7 [link] => ) Array ( [return] => chunks [id] => 2511 [type] => document [contentType] => text/html [pagetitle] => vkUserPost1 [longtitle] => [description] => [alias] => vkuserpost1 [alias_visible] => 1 [link_attributes] => [published] => 1 [pub_date] => 0 [unpub_date] => 0 [parent] => 0 [isfolder] => 0 [introtext] => [richtext] => 0 [template] => 0 [menuindex] => 24 [searchable] => 0 [cacheable] => 1 [createdby] => 1 [createdon] => 1785171849 [editedby] => 1 [editedon] => 1785172147 [deleted] => 0 [deletedon] => 0 [deletedby] => 0 [publishedon] => 1785171840 [publishedby] => 1 [menutitle] => [donthit] => 0 [privateweb] => 0 [privatemgr] => 0 [content_dispo] => 0 [hidemenu] => 1 [class_key] => modDocument [context_key] => web [content_type] => 1 [uri] => vkuserpost1.html [uri_override] => 0 [hide_children_in_tree] => 0 [show_in_tree] => 1 [properties] => [idx] => 8 [link] => ) Array ( [return] => chunks [id] => 2512 [type] => document [contentType] => text/html [pagetitle] => vkUserPost2 [longtitle] => [description] => [alias] => vkuserpost2 [alias_visible] => 1 [link_attributes] => [published] => 1 [pub_date] => 0 [unpub_date] => 0 [parent] => 0 [isfolder] => 0 [introtext] => [richtext] => 0 [template] => 0 [menuindex] => 25 [searchable] => 0 [cacheable] => 1 [createdby] => 1 [createdon] => 1785171873 [editedby] => 1 [editedon] => 1785172179 [deleted] => 0 [deletedon] => 0 [deletedby] => 0 [publishedon] => 1785171840 [publishedby] => 1 [menutitle] => [donthit] => 0 [privateweb] => 0 [privatemgr] => 0 [content_dispo] => 0 [hidemenu] => 1 [class_key] => modDocument [context_key] => web [content_type] => 1 [uri] => vkuserpost2.html [uri_override] => 0 [hide_children_in_tree] => 0 [show_in_tree] => 1 [properties] => [idx] => 9 [link] => ) Array ( [return] => chunks [id] => 2510 [type] => document [contentType] => text/html [pagetitle] => vkGroupPost [longtitle] => [description] => [alias] => vkgrouppost [alias_visible] => 1 [link_attributes] => [published] => 1 [pub_date] => 0 [unpub_date] => 0 [parent] => 0 [isfolder] => 0 [introtext] => [richtext] => 0 [template] => 0 [menuindex] => 23 [searchable] => 0 [cacheable] => 1 [createdby] => 1 [createdon] => 1785160108 [editedby] => 1 [editedon] => 1785160119 [deleted] => 0 [deletedon] => 0 [deletedby] => 0 [publishedon] => 1785160080 [publishedby] => 1 [menutitle] => [donthit] => 0 [privateweb] => 0 [privatemgr] => 0 [content_dispo] => 0 [hidemenu] => 1 [class_key] => modDocument [context_key] => web [content_type] => 1 [uri] => vkgrouppost.html [uri_override] => 0 [hide_children_in_tree] => 0 [show_in_tree] => 1 [properties] => [idx] => 10 [link] => ) . Сниппет получает параметры, делает запрос к базе данных и выводит результат через указанный чанк.

Преимущества сниппетов

  • Повторное использование — один сниппет вызывается на разных страницах
  • Кеширование — результат можно закешировать для ускорения
  • Разделение логики и представления — код отдельно, вёрстка отдельно