Сниппеты. Modx docs


modDevTools / Компоненты / docs.modx.pro

Компонент, который помогает разработчикам быстрее и проще работать в админке MODX Revolution.

Возможности компонента

На странице редактирования чанка добавляются вкладки, в которых можно изменять связанные объекты:
На странице редактирования шаблона добавляются следующие вкладки:
На странице редактирования сниппета добавляется вкладка с ресурсами, в шаблоне или контенте которых вызывается данный сниппет.
На странице редактирования ресурса добавляются так называемые "Хлебные крошки" (BreadCrumbs).

Они сделаны на основе ExtJS-компонента хлебных крошек из установщика пакетов дополнений и вписываются в общее оформление админки независимо от версии.

Так же хлебные крошки показываются в "Обзоре ресурса" (его можно увидеть при клике правой кнопки на ресурсе в дереве, или просто не имея прав на редактирование ресурса, но имея на просмотр). В этом случае производится переход на обзор ресурса родителя, а не на его редактирование.

Поддерживаются контексты, т.е. в каком контексте ресурс, в этом контексте показываются и его родители.

Поиск и замена строк в чанках и шаблонах.

Для этого появился подраздел modDevTools в меню «Приложения». Все довольно просто. Вводите строку и нажимаете кнопку «Найти». Ниже есть фильтры в контенте каких элементов осуществлять поиск.

После того, как поиск произошел, выводится код всех найденных элементов с подсветкой искомой строки. Замена производится в каждом элементе отдельно. Для этого после кода элемента идет панель с 3 кнопками: «Заменить», «Заменить все» и «Пропустить».

Кнопка «Заменить» меняет искомую строку, на которой установлен курсор (более темная подсветка), на строку замены. Кнопка «Пропустить» передвигает курсор на следующее совпадение. После первоначального поиска можно изменить строку поиска, и тогда кнопки замены оперируют уже с этой новой строкой только для конкретного элемента, после которого они расположены.

Права пользователей для доступа к функциям modDevTools:

Компонент сам не добавляет, но во всю использует стандартные права пользователей.

Права Описание
view_chunk И view_template Для доступа к разделу поиска и замены строк (пункт меню modDevTools)
save_chunk Для замены строк в чанках в этом разделе.
save_template Для замены строк в шаблонах в этом разделе.
view_chunk Для показа вкладки "Чанки"
view_template Для показа вкладки "Шаблоны"
view_snippet Для показа вкладки "Сниппеты"
resource_tree Для показа вкладки "Ресурсы"
edit_document Для показа кнопки "Редактировать" в таблице на вкладке "Ресурсы"
save_document Для изменения шаблона ресурса в таблице на вкладке "Ресурсы"
publish_document Для изменения статуса публикации в таблице на вкладке "Ресурсы"
delete_document Для удаления ресурса в корзину в таблице на вкладке "Ресурсы"
save_chunk/save_template/save_snippet Используются стандартные процессоры MODX, поэтому для редактирования элементов нужны соответствующие права.

Внимание: нет поддержки групп ресурсов (пока?), т.е. если какая-то группа ресурсов скрыта от менеджера в админке, то он сможет ее увидеть в списке ресурсов элементов.

Дополнительная информация:

docs.modx.pro

Быстрый старт / miniShop2 / Компоненты / docs.modx.pro

miniShop2 поставляется со всеми необходимыми сниппетами и чанками. Для работы вам нужен MODX не ниже 2.3 и PHP не ниже 5.3.

Установка

Для тестирования можно использовать наш хостинг, на нём эти дополнения можно выбрать прямо при создании сайта.

Шаблоны

Theme.Bootstrap устанавливает 2 шаблона, которые вы можете менять по своему усмотрению. Вы можете переименовать и использовать их, или создать новые.

Всего нам нужно 3 шаблона.

Общий

Это шаблон для вывода содержимого обычных ресурсов

<!DOCTYPE html> <html lang="en"> <head> [[$Head]] </head> <body> [[$Navbar]] <div> <div> [[*content]] </div> [[$Footer]] </div> </body> </html>

Он будет использоваться для главной страницы и корзины.

Категория

Шаблон вывода категории с постраничным выводом товаров

<!DOCTYPE html> <html lang="en"> <head> [[$Head]] </head> <body> [[$Navbar]] <div> <div> [[!pdoPage? &element=`msProducts` ]] [[!+page.nav]] </div> [[$Footer]] </div> </body> </html>

Товар

Шаблон товара, вместо содержимого вызывается чанк из комплекта ms2

<!DOCTYPE html> <html lang="en"> <head> [[$Head]] </head> <body> [[$Navbar]] <div> <div> [[$msProduct.content]] </div> [[$Footer]] </div> </body> </html>

Созданные шаблоны можно указать в системных настройках:

Разделы

Главная страница у нас уже есть, просто назначаем ей "Общий" шаблон и пишем в контент:

[[!pdoMenu]]

Это покажет нам все документы сайта на главной, чтобы не заблудиться.

Затем создаём категорию товаров и проверяем, чтобы у неё был шаблон "Категория".

После создания категории, добавляем в неё несколько товаров и проверяем их шаблон тоже.

Теперь осталось только создать корзину. Для этого создаём новую страницу с шаблоном "Общий" в корне сайта, и пишем там:

[[!msCart]] [[!msOrder]] [[!msGetOrder]]

Эти сниппеты выведут нам корзину, оформление заказа и покажут созданный заказ.

Они сделаны таким образом, чтобы что-то выводить только когда это нужно. Например, msCart и msOrder прячутся, если в адресе страницы есть параметр msorder=id заказа, а вот msGetOrder наоборот, реагирует только на него.

Миникорзина

Всё, первичная настройка магазина окончена и уже можно заказывать товары.

В качестве финального штриха можно еще зайти в чанк Navbar и добавить там вывод миникорзины. Например, вот так:

<div> <!-- Это вывод меню, он есть по умолчанию --> <ul> [[pdoMenu? &startId=`0` &level=`1` &tplOuter=`@INLINE {{+wrapper}}` ]] </ul> <!-- А вот здесь добавляем миникорзину --> <ul> <li>[[!msMiniCart]]</li> </ul> </div>

docs.modx.pro

Сниппеты / easyComm / Компоненты / docs.modx.pro

ecForm

Сниппет выводит форму добавления нового сообщения.

Сниппет можно вызывать кешированным, так как его назначение - только вывести html код формы и новую цепочку. При первом вызове сниппет создает в базе новую цепочку сообщений (объект ecThread), привязанную к текущему ресурсу. При любом вызове сниппета (а не только при первом) в поле properties объекта ecThread записываются в формате json все параметры сниппета, что бы в дальшейшем можно было их использовать.

Параметры сниппета

Параметр По-умолчанию Описание
thread resource-[[*id]] Имя цепочки сообщений. Должно быть уникальным.
formId как thread Используется на фронтенд для идентификации формы при наличии нескольких форм на одной странице.
allowedFields user_name, user_email, user_contacts, subject, rating, text Список разрешенных для заполнения полей в форме.
requiredFields user_name, text Список обязательных полей.
antispamField address Имя поля, используемого как антиспам. Это поле должно быть скрыто от пользователя через css, и он его не заполнит, в то время, как спам-роботы будут его заполнять.
autoPublish 0 Автопубликация сообщений. Возможны варианты "пустое значение" - автопубликация отключена, "OnlyLogged" - автопубликация, если пользователь авторизован в текущем контексте, "All" - автопубликация сообщений от всех пользователей.
tplForm tpl.ecForm Чанк с формой
tplFormReCaptcha tpl.ecForm.ReCaptcha Чанк с ReCaptcha
tplSuccess tpl.ecForm.Success Чанк с сообщением об успешной отправке сообщения.
mailManager E-mail администратора для уведомлений о новых сообщениях, перекрывает настройку ec_mail_manager. Используя этот параметр вы можете указать разные адреса для разных вызовов сниппета ecForm
newEmailSubjUser Тема email письма пользователю о том, что он оставил сообщение, перекрывает настройку ec_mail_new_subject_user
tplNewEmailUser tpl.ecForm.New.Email.User Чанк с шаблоном email письма пользователя о том, что он оставил сообщение. Если параметр пуст - письмо отправлено не будет.
newEmailSubjManager Тема email письма менеджеру о новом сообщении на сайте, перекрывает настройку ec_mail_new_subject_manager
tplNewEmailManager tpl.ecForm.New.Email.Manager Чанк с шаблоном email письма менеджеру о новом сообщении на сайте. Если параметр пуст - письмо отправлено не будет.
updateEmailSubjUser Тема email письма пользователю о публикации сообщения или ответе на него, перекрывает настройку ec_mail_update_subject_user
tplUpdateEmailUser tpl.ecForm.Update.Email.User Чанк с шаблоном email письма пользователю о публикации сообщения или ответе на него. Если параметр пуст - письмо отправлено не будет.

Зависимости

Важно! Для работы формы отправки сообщения необходимо наличие подключенного на странице jquery и плагина jquery.form (не поставляется с компонентом, необходимо подключать вручную!). Если последний не подключен - вы увидите сообщение "Can`t find jQuery ajaxForm plugin!".

ecMessages

Сниппет выводит сообщения из определенной цепочки. Обязательно вызывать некешированным, т.к. при публикации сообщений из админки кеш сайта не очищается.

Параметры сниппета

Параметр По-умолчанию Описание
thread resource-[[*id]] Имя цепочки сообщений.
threads Список цепочек, из которых необходимо выводить сообщения, через запятую (например "resource-1,resource-2"). Укажите *, что бы вывести сообщения из всех цепочек. Параметр имеет приоритет над параметром thread.
messages Id конкретных Сообщений для вывода.
subject Отфильтровать сообщения по Теме (поле subject)
tpl tpl.ecMessages.Row Чанк для вывода одного сообщения. В чанке доступны поля сообщения, цепочки (с префиксом thread_). Используя параметр resourceFields, можно включить в выборку и поля ресурса.
tplWrapper Чанк обертка. Используйте в нем плейсхолдер [[+output]]. Кроме того, если используется вывод сообщений только из одной цепочки, то будут доступны все поля thread как плейсхолдеры, а также рейтинг цепочки в отформатированном виде [[+rating_wilson_percent]] и [[+rating_simple_percent]]
tplEmpty Чанк для отображения, если нечего выводить.
sortby date Поле для сортировки
sortdir DESC Направление сортировки
limit 10 Ограничение выборки
showUnpublished 0 Показывать неопубликованные сообщения
showDeleted 0 Показывать удаленные сообщения
resourceFields Добавить в выборку поля ресурса (с префиксом resource_), например: "id,pagetitle,longtitle,introtext". Поля id и pagetitle добавляются всегда, но лучше их явно указать, т.к. это поведение может быть изменено в будущем.
outputSeparator \n Разделитель вывода строк
toPlaceholder Если указан этот параметр, то результат будет сохранен в плейсхолдер, вместо прямого вывода на странице.
toSeparatePlaceholders Задать плейсхолдер для каждого сообщения
showLog 0 Показывать лог

ecMessagesCount

Сниппет выводит количество сообщений из определенной цепочки (или цепочек). Обязательно вызывать некешированным, т.к. при публикации сообщений из админки кеш сайта не очищается.

Параметры сниппета

Параметр По-умолчанию Описание
thread resource-[[*id]] Имя цепочки сообщений.
threads Список цепочек, из которых необходимо выводить сообщения, через запятую (например "resource-1,resource-2"). Укажите *, что бы вывести сообщения из всех цепочек. Параметр имеет приоритет над параметром thread.
subject Отфильтровать сообщения по Теме (поле subject)
showUnpublished 0 Показывать неопубликованные сообщения
showDeleted 0 Показывать удаленные сообщения

ecThreadRating

Сниппет выводит рейтинг указанной цепочки. Обязательно вызывать некешированным, т.к. при публикации сообщений из админки кеш сайта не очищается. С версии 1.5.1-pl в стандартном чанке добавлена микроразметка http://schema.org/AggregateRating

Параметры сниппета

Параметр По-умолчанию Описание
thread resource-[[*id]] Имя цепочки сообщений.
tpl tpl.ecThreadRating Чанк для вывода рейтинга. Доступны плейсхолдеры rating_simple, rating_simple_percent, rating_wilson, rating_wilson_percent, а также все поля объекта ecThread
toPlaceholder Если заполнить параметр, то результат будет установлен в плейсхолдет с таким именем

docs.modx.pro

VoteForms / Компоненты / docs.modx.pro

Система голосования и опросов для MODX Revolution

GithubПоcледние версии

Возможности

Системные настройки

Название По умолчанию Описание
voteforms_assets_url {assets_url}components/voteforms/ Url к файлам фронтенда
voteforms_core_path {core_path}components/voteforms/ Путь к компоненту
voteforms_frontend_css [+cssUrl]]web/voteforms.css Путь к файлу со стилями. Если вы хотите использовать собственные стили - укажите путь к ним здесь, или очистите параметр и загрузите их вручную через шаблон сайта.
voteforms_frontend_js [[+jsUrl]]web/voteforms.js Путь к файлу со скриптами. Если вы хотите использовать собственные скрипты - укажите путь к ним здесь, или очистите параметр и загрузите их вручную через шаблон сайта.

Параметры вызова сниппета VoteForm

Название По умолчанию Описание
id Id формы, обязательный параметр
thread resource-[[*id]] Имя ветки для записи результатов. По умолчанию, "resource-[[*id]]"
tplRow tpl.VoteForms.row Чанк оформления для каждого поля
tplOuter tpl.VoteForms.outer Чанк оформления всего содержимого
sortby index Поле для сортировки.
sortdir ASC Направление сортировки
submit false Использовать кнопку отправить в форме

Параметры вызова сниппета getVoteFormRating

Название По умолчанию Описание
form Id формы, обязательный параметр
resource Id ресурса. По умолчанию текущий ресурс
field Id поля - вывести результаты голосования только по этому полю
thread resource-[[*id]] Имя ветки для записи результатов. По умолчанию, "resource-[[*id]]"
tpl tpl.VoteForms.rating Чанк оформления
stars true Выводить виджет с результатами голосования или нет

Способы вызова

[[VoteForm?&id=`1`]] [[getVoteFormRating?form=1]] [[getVoteFormRating?form=1&field=2]]

Испрользование вместе с pdoResources : сортировка ресурсов по рейтингу из формы c id 1

[[pdoResources? &class=`modResource` &parents=`0` &tpl=`@INLINE <li>[[+pagetitle]] - <span>[[+rating]]</span> </li>` &leftJoin=`{ "VoteFormThread": { "class": "VoteFormThread", "on": "modResource.id = VoteFormThread.resource AND VoteFormThread.form = 1" } }` &select=`{ "modResource": "*", "VoteFormThread": "rating" }` &sortby=`VoteFormThread.rating` &sortdir=`DESC` ]]

Плейсхолдеры доступные в чанках компонента

VoteForm - tpl.VoteForms.outer

output, rating_max, параметры вызова сниппета

VoteForm - tpl.VoteForms.row

getVoteFormRating - tpl.VoteForms.rating

Разработка дополнения

О предложениях и ошибках в работе VoteForms сообщайте на Github.

docs.modx.pro

pdoSitemap / Сниппеты / pdoTools / docs.modx.pro

Быстрый сниппет генерации карты сайта для поисковых систем (sitemap.xml). Понимает параметры сниппета GoogleSitemap (конвертирует в собственные) и легко его заменяет.

Главная особенность - очень высокая скорость, по сравнению с аналогом. На сайте bezumkin.ru при 1700 страниц скорость генерации возросла в 12 раз, с 8.4 сек. до 0.7.

По умолчанию отключена проверка прав на доступ к документам. Это легко исправить включением параметра &checkPermissions (Внимание: замедляет работу!):

[[!pdoSitemap? &checkPermissions=`list` ]]

По возможности ресурсы лучше исключать из карты параметрами сниппета.

Параметры

pdoSitemap принимает все параметры pdoTools и некоторые свои:

Параметр По умолчанию Описание
&sitemapSchema http://www.sitemaps.org/schemas/sitemap/0.9 Схема карты сайта.
&forceXML 1 Принудительно выводить страницу как XML.
&priorityTV Дополнительное поле, в котором указывается приоритет документа. Нужно добавить его в параметр &includeTVs

Шаблоны

&tpl

@INLINE <url>\n\t <loc>[[+url]]</loc>\n\t <lastmod>[[+date]]</lastmod>\n\t <changefreq>[[+update]]</changefreq>\n\t <priority>[[+priority]]</priority>\n </url>

&tplWrapper

@INLINE <?xml version=\"1.0\" encoding=\"[[++modx_charset]]\"?>\n<urlset xmlns=\"[[+schema]]\">\n[[+output]]\n</urlset>

Приоритет и частота обновления для поисковиков устанавливаются в зависимости от последней даты изменения документа:

Времени с последнего обновления документа Приоритет Частота обновления
Менее суток назад 1.0 daily
Более суток и менее недели назад 0.75 weekly
Более недели и менее месяца назад 0.5 weekly
Более месяца назад 0.25 monthly

Инструкция по созданию файла sitemap.xml

  1. Создайте новый документ в корне сайта. На вкладке Документ выберите пустой шаблон, укажите Заголовок документа (не важно какой), и псевдоним sitemap. Проверьте, чтобы стояли галочки «Опубликован» и «Не показывать в меню».
  2. Перейдите на вкладку Настройки и укажите «Тип содержимого» - «XML».
  3. Уберите галочку с «Использовать HTML-редактор» и сохраните документ.
  4. В содержимом ресурса вызовите только сниппет pdoSitemap (см. Примеры ниже).

Примеры

Обычный вывод карты сайта для текущего контекста. В большинстве случаев этого может быть достаточно:

[[pdoSitemap]]

Генерируем карту сайта только из определённый контейнеров:

[[pdoSitemap? &parents=`10` ]]

Исключаем ресурсы с id = 15 и 25, вместе с их потомками:

[[pdoSitemap? &parents=`10, -15,-25` ]]

А теперь исключаем id = 15 с потомками, а 25 - без:

[[pdoSitemap? &resources=`-25` &parents=`-15,10` ]]

Добавляем еще один контекст:

[[pdoSitemap? &resources=`-25` &parents=`-15,10` &context=`web,catalog` ]]

А вот так можно посмотреть лог выборки карты:

[[pdoSitemap? &resources=`-25` &parents=`-15,10` &context=`web,catalog` &showLog=`1` &forceXML=`0` ]]

docs.modx.pro

pdoCrumbs / Сниппеты / pdoTools / docs.modx.pro

Сниппет для построения навигации в стиле хлебных крошек.

Хорошо заменяет BreadCrumb, работает с документами из любых контекстов и позволяет указывать различные условия для выборки ресурсов.

Сниппет обладает очень высокой скоростью работы, за счет выборки всех нужных элементов из БД за один запрос.

Параметры

Принимает все параметры pdoTools и некоторые свои:

Параметр По умолчанию Описание
&showLog 0 Показывать дополнительную информацию о работе сниппета. Только для авторизованных в контекте «mgr».
&from 0 Id ресурса, от которого строить хлебные крошки. Обычно это корень сайта, то есть «0».
&to Id ресурса для которого строятся хлебные крошки. По умолчанию это id текущей страницы.
&exclude Список id ресурсов, которые нужно исключить из выборки.
&toPlaceholder Если не пусто, сниппет сохранит все данные в плейсхолдер с этим именем, вместо вывода не экран.
&outputSeparator \n Разделитель между крошками
&tpl Имя чанка для оформления ресурса. Если не указан, то содержимое полей ресурса будет распечатано на экран.
&tplCurrent Чанк оформления текущего документа в навигации.
&tplMax Чанк, который добавляется в начало результатов, если их больше чем &limit.
&tplHome Чанк оформления ссылки на главную страницу.
&tplWrapper Чанк-обёртка, для заворачивания всех результатов. Понимает один плейсхолдер: [[+output]]. Не работает вместе с параметром &toSeparatePlaceholders.
&wrapIfEmpty Включает вывод чанка-обертки &tplWrapper даже если результатов нет.
&showCurrent 1 Выводить текущий документ в навигации.
&showHome 0 Выводить ссылку на главную в начале навигации.
&showAtHome 1 Показывать хлебные крошки на главной странице сайта.
&hideSingle 0 Не выводить результат, если он один единственный.
&direction ltr Направление навигации: слева направо «ltr» или справа налево «rtl», например для Арабского языка.

Шаблоны

Шаблон По умолчанию
&tpl @INLINE <li><a href="[[+link]]">[[+menutitle]]</a></li>
&tplCurrent @INLINE <li>[[+menutitle]]</li>
&tplMax @INLINE <li>&nbsp;...&nbsp;</li>
&tplHome
&tplWrapper @INLINE <ul>[[+output]]</ul>

Примеры

Генерация хлебных крошек для текущей страницы:

[[pdoCrumbs]]

Генерация в ограничением по количеству пунктов:

[[pdoCrumbs? &limit=`2` ]]

Сниппет хорошо работает при вызове из pdoResources. Например, вот такой чанк:

<h4>[[+pagetitle]]</h4> <p>[[+introtext]]</p> [[pdoCrumbs? &to=`[[+id]]` &showCurrent=`0` ]]

Демо

Рабочий пример генерации хлебных крошек в результатах поиска mSearch3.

docs.modx.pro

FileAttach / Компоненты / docs.modx.pro

Модуль для загрузки файлов к ресурсам в менеджере сайта

К каждому файлу можно указывать описание, режим приватности (доступность по прямой ссылке), количество скачиваний, контрольную сумму SHA1.

Файлы доступны для скачивания по прямой ссылке. Для "закрытых" файлов генерируется длинное название, не соответствующее изначальному имени файла. У "открытых" файлов имя сохраняется.

Произвольный порядок файлов в списке можно задать перетягиванием записей в редакторе на нужное место.

Поддерживает работу в СУБД MySQL и SQLSrv DB.

Разработка компонента ведется на странице: https://github.com/13hakta/FileAttach

Чанк FileAttachTpl

Позволяет задать произвольное оформление для вывода записей файлов.

Название Описание
&description Описание
&docid Идентификатор ресурса, для которого загружен файл
&download Количество скачиваний
&hash Контрольная сумма SHA1
&id Идентификатор файла
&internal_name Внутреннее имя. Содержит имя файла в файловой системе
&name Имя файла. Совпадает с internal_name когда private=нет
&path Путь внутри медиа источника
&private Признак закрытости файла
&rank Порядок в списке. Можно использовать для сортировки
&size Размер файла в байтах

Изначальное содержание чанка:

<p>[[+description:notempty=`<strong>[[+description]]</strong><br/>`]] <a href="[[+url]]">[[+name]]</a> <span>[[+download]]</span> [[+size:notempty=`<br/><small>Size: [[+size]] bytes</small>`]] [[+hash:notempty=`<br/><small>SHA1: [[+hash]]</small>`]]</p>

Сниппет FileAttach

Выводит список файлов.

Название Значение по умолчанию Описание
&limit 0 Ограничение вывода файлов на странице. Если не указано, то вывод всех прикрепленных файлов
&makeURL false Создавать ссылку для скачивания файла
&outputSeparator Разделитель вывода записей
&privateUrl false Форсировать использование обработчик скачиваний, что позволяет считать скачивания даже для открытых файлов
&resource 0 Показать файлы для документа с номером id, если не указано, то вывод только для текущего документа
&showSize false Получать размер файла
&sortBy name Сортировать по полю
&sortDir ASC Направление сортировки
&toPlaceholder false Сохранять результат в плейсхолдер, вместо прямого вывода на странице
&tpl FileAttachTpl Чанк оформления каждого ряда файлов

Класс FileItem

Методы

Название Описание Параметры
generateName Сгенерировать новое имя файла length (int) = 32
getFullPath Получить полный путь к файлу
getPath Получить путь к файлу относительно корня медиа источника
getSize Получить размер файла
getUrl Получить ссылку на файл
rename Переименовать файл name (str)
sanitizeName Отфильтровать недопустимые комбинации символов в имени файла name (str)
setPrivate Установить режим приватности private (bool)

Системные настройки

Название Значение по умолчанию Описание
calchash false Вычислять контрольную сумму SHA1 при загрузке файла
download true Считать количество скачиваний
files_path Путь Путь файла относительно корня медиа источника. Завершается на "/".
mediasource 1 Идентификатор медиа источника
private false Делать файл закрытым при загрузке
put_docid false Размещать файл в подкаталоге ресурса
templates Список шаблонов документов, в которых будет активирован модуль. Перечисление через запятую
user_folders false Размещать файл в подкаталоге пользователя

Коннектор для скачивания файлов

Закрытые файлы скачиваются через коннектор, что позволяет скрыть прямую ссылку на файл и произвести подсчет количества скачиваний. Можно скачивать открытые файлы через коннектор, указав в вызове сниппета &privateUrl=`1`, при этом коннектор сделает перенаправление на прямую ссылку.

Ссылка на коннектор имеет вид: MODX_ASSETS_URL/components/fileattach/connector.php?action=web/download&ctx=web&id=file_id, где file_id - порядковый номер файла в таблице БД.

Политики доступа

Список разрешений

Название Описание
fileattach.doclist Управление файлами в документе
fileattach.download Возможность скачивать файлы
fileattach.totallist Управление всеми файлами

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

В простом случае можно просто вызвать сниппет:

[[FileAttach]]

Чтобы для всех файлов считалось количество скачиваний надо чтобы они открывались через приватную ссылку:

[[FileAttach? &privateUrl=`1`]]

Сортировка по порядку, заданному вручную:

[[FileAttach? &sortby=`rank`]]

Снимки экрана

docs.modx.pro


Prostoy-Site | Все права защищены © 2018 | Карта сайта