MODX. NewsPublisher

NewsPublisher — компонент для публикации ресурсов из фронт-енда. Работает с деревом ресурсов, дополнениями Collections и Articles.

Для работы компонента, необходимо разместить его в контентной части ресурса, который будет контейнером для всех публикаций извне, вызов сниппета:

[[!NewsPublisher]]

Если будет использоваться дополнение Articles, то вызов должен содержать как минимум такие параметры:

[[!NewsPublisher?
       &parentid — `1` // ID страницы контейнера
       &templateid — `1` //ID шаблона дочерних ресурсов 
       &classkey — `Article`
       &hidemenu — `1`
]]

Для указания полей, которые должны выводиться на странице, используется свойство 

  • &show=`pagetitle,description,pub_date,introtext,TV1,TV2`

На странице поля будут выводиться в порядке, указанном в этом свойстве.

Настройка доступа

Админ может использовать NewsPublisher по умолчанию, тогда как остальным пользователям необходимо дать разрешение на публикацию, добавив пользователю или группе политику NewsPublisherEditor. Если пользователь не авторизован, NewsPublisher перенаправляет его на страницу входа, что, впрочем, можно отключить, параметром &np_login_redirect (No,Yes). Если редирект разрешен, в параметре &np_login_id надо указать ID страницы для входа.

Работа с ресурсами

Редактирование существующих ресурсов

Для добавления возможности редактирования, в шаблоне страницы необходимо разместить тег [[NpEditThisButton]].

По умолчанию, кнопка расположена в нижней правой части страницы, и имеет несколько параметров:

  • &right — расстояние от правого края (по умолчанию 20%);
  • &bottom — расстояние от нижнего края (по умолчанию 20%);
  • &noShow — отображение кнопки можно отключить на выборочных страницах, указав идентификаторы в этом параметре;
  • &ownpagesonly — отображение кнопки только на странице созданной пользователем;

Создание дубликата ресурса

При установке параметра &duplicatebutton = `1` появляется кнопка «дублировать ресурс», при нажатии на нее, текущий ресурс сохраняется, а пользователь перемещается на страницу редактирования новой копии ресурса.

Удаление ресурса

При установке параметра &deletebutton = `1` появляется кнопка «удалить ресурс», при нажатии на нее, текущий ресурс удаляется, так же как и потомки ресурса. При установке параметра &confirmdelete = `1` ​(по умолчанию 1) — появляется всплывающее окно с подтверждением решения удалить ресурс и его дочерние страницы. Если поставить 0, ресурсы будут удаляться без вопроса.

Переменные

Переменные шаблонов

  • &errortpl — вывод ошибки;
  • &fielderrortpl — вывод ошибки у поля;
  • &outertpl — обертка формы с полями;
  • &datetpl — поле даты;
  • &booltpl — поле стандартных полей типа boolean (галки опубликовано, скрыто из меню и т.п.);
  • &optionoutertpl — обертка tv полей типа boolean;
  • &optiontpl — чанк единицы значения tv полей типа boolean;
  • &listoutertpl — обертка списка;
  • &listoptiontpl — пункты списка;
  • &texttpl — текстовая строка;
  • &textareatpl — текстовое поле;
  • &inttpl — числовое поле;
  • &filetpl — загрузка файла;
  • &imagetpl — загрузка изображения;
  • &richtexttpl — визуальный редактор;
  • &tinymceinittpl — инициализация tinyMCE (визуальный редактор);
  • &elfinderinittpl — инициализация elFinder (файловый менеджер);

Вкладки

Поля NewsPublisher можно разделять по вкладкам, настраивая отображение подобно админ панели MODX. Для этого надо установить параметры:

&usetabs=`1`
&tabs=`{
    "Main" :    ["pagetitle","introtext","content"],
    "Dates" :   ["pub_date", "unpub_date"],
    "Publish" : ["publish"],
    "TVs" :     ["MyTv1","MyTv2"]
}`

Параметры вкладок составляются в формате json, который имеет некоторые особенности. Ниже описано несколько правил которым стоит следовать во избежании ошибок:

  • Следует использовать двойные кавычки;
  • Название вкладок — слева, название полей — справа; 
  • Название вкладок и полей должны разделяться двоеточием;
  • Все поля должны быть указаны в параметре &show;
  • Все названия должны заключаться в двойные кавычки;
  • Названия полей обрамляются квадратными скобками;
  • Названия полей разделяются запятыми, но последнее поле отделять запятой не надо;
  • Все строки с вкладками разделяются запятыми;
  • Конструкция списка должна быть заключена в фигурные скобки (`{ }`);

Теги MODX

Из соображений безопасности, теги MODX запрещены в NewsPublisher, специальной настройкой allow_tags_in_post и удаляются из $_POSTмассива при отправке формы. Но, в NewsPublisher 2.0, при установке нужного разрешения, теги MODX работают при вызове через фигурные скобки {{ ... }}.

Была ли статья полезной?