Дефолтное назначение шаблонов для категорий блога
Подскажите, как назначить шаблон по дефолту для конкретной папки/категории статей, т.е. чтобы при создании дочернего документа в списке шаблонов уже стоял назначенный для этой категории блога шаблон статьи (или список доступных шаблонов) (и желательно, чтобы все остальные шаблоны вообще были убраны из списка, хотя это не так критично)?
Спасибо за помощь.
Спасибо за помощь.
Комментарии: 37
Ну если я создаю ресурс тыкая по ресурсу правой кнопкой и выбираю — создать дочерний или создать тут. ТОгда у меня вроде бы шаблон наследуется
Правильно. Создаю документ в ресурсе «Блог» и сразу наследуется шаблон «Блог», но мне нужно чтобы подставлялся шаблон «Статья в блоге»
Тогда создайте одну статью и через копирование создавайте новые, шаблон и прочее будет как у образца
Так и делаю, но это не выход. Хотелось автоматизировать — контент менеджер постоянно тупит, надоело. Вообще даже более важно запретить использовать другой шаблон, чем назначенный для дочерних элементов конкретного родительского ресурса. Вот это позволит избежать ошибки использования неправильного шаблона.
Но как это сделать :((?
Но как это сделать :((?
Как вариант — написать плагин примерно следующего содержания:
<?php
if ($modx->event->name == "OnDocFormRender" && $mode == "new") {
if ($parent = intval($_REQUEST['parent'])) {
if (isset($modx->controller)) {
switch ($parent) {
case '1':
$newTemplate = '10';
break;
//...
}
$modx->controller->setProperty('template', $newTemplate);
}
}
}
спасибо, буду пробовать
В Collections такие плагины уже есть «из коробки».
Не надо придумывать велосипеды, такой функционал уже есть в MODX — меню настройка форм.
Спасибо. А можно где-то в настройках запретить сохранение дочернего документа, если его шаблон не соответствует разрешенным для его родительского ресурса шаблонам?
Через настройку форм можно скрыть поле выбора шаблона и у пользователя не будет возможности выбрать неверный.
Я стараюсь всегда настраивать формы — изменять подписи, выставлять значения по умолчанию, убирать лишние поля, чтобы пользователя не смущало большое количество полей.
Вот, например, форма добавления преподавателя — pagetitle переименованный в Фамилию Имя Отчество, tv с картинкой перенесена на другую панель и content. Все остальное скрыто.
Я стараюсь всегда настраивать формы — изменять подписи, выставлять значения по умолчанию, убирать лишние поля, чтобы пользователя не смущало большое количество полей.
Вот, например, форма добавления преподавателя — pagetitle переименованный в Фамилию Имя Отчество, tv с картинкой перенесена на другую панель и content. Все остальное скрыто.
Спасибо ) я тоже не пользовался таким, возможно даже сделаю для себя такое )
Пожалуйста. Рад, что поделился чем то полезным)
Для администратора срабатывает. Для группы менеджер не срабатывает. Где то в настройках доступа менеджера я пропустил?
На странице редактирования профиля форм есть вкладка Группы пользователей. Возможно там нужно указать группу явно. Хотя если не указаны группы, то изменения должны применяться ко всем.
shot.hsdn.org/aoC3P6HB
Вот я указал группу которой применять.
Не применяется.
Указываю группу администратора, все применилось. Но администратору оно не надо применять ) Куда смотреть?
Вот я указал группу которой применять.
Не применяется.
Указываю группу администратора, все применилось. Но администратору оно не надо применять ) Куда смотреть?
так точно — shot.hsdn.org/LkVjQxRi
Разобрался.
У пользователь входил в группу администратора и в группу менеджеров. В итоге Форма глючила. Исключил из администраторской группы данного менеджера и все заработало 0_о
У пользователь входил в группу администратора и в группу менеджеров. В итоге Форма глючила. Исключил из администраторской группы данного менеджера и все заработало 0_о
Получалось, что этот пользователь видел форму такой, какой ее видел администратор?
получается да, я убирал поля а они как были так и остались )
Тогда это не глюк, а нормальное поведение — правила для админа важней чем для менеджера)
Небольшой оффтоп. Попробуй FastUploadTV.
Спасибо, классная штука, обязательно попробую.
А как вы перенесли tv с картинкой на другое поле в формах? Что-то не нахожу как это сделать…
Тысячи документов в древе тоже настройками форм скрываете? Collections удобнее в разы, тем более, что не исключает так же использовать кастомизацию форм. Но суть- именно назначать шаблоны для потомков удобнее в Collections, плюс множество дополнительных настроек.
Не использовал Collections, но обязательно посмотрю чем он хорош. На моей практики тысячи дочерних документов всегда были каталогами, и укладывались в фукнционал miniShop2.
Да и кроме того, против Collections ничего не имеею против, основная его задача — спрятать большое количество дочерних документов из дерева. И ставить его только ради назначения шаблона по дефолту излишне, основной функционал все равно останется не востребованным. В рамках данного вопроса отлично работают стандартные возможности MODX.
Ну и на всякий случай — велосипедами я назвал плагины выше. Зачем писать то, что сделали разработчики и сделали это хорошо? Уметь плагины писать нужно, но в данном случае — это незнание возможностей системы.
Да и кроме того, против Collections ничего не имеею против, основная его задача — спрятать большое количество дочерних документов из дерева. И ставить его только ради назначения шаблона по дефолту излишне, основной функционал все равно останется не востребованным. В рамках данного вопроса отлично работают стандартные возможности MODX.
Ну и на всякий случай — велосипедами я назвал плагины выше. Зачем писать то, что сделали разработчики и сделали это хорошо? Уметь плагины писать нужно, но в данном случае — это незнание возможностей системы.
Inherit Template вам в помощь
есть еще autotamplate
Вот так еще можно
Через «Настройку форм»
Ограничивающее поле: parent
Ограничивающее значение: id-категории
template: id-шаблона, который нужно присвоить
Через «Настройку форм»
Ограничивающее поле: parent
Ограничивающее значение: id-категории
template: id-шаблона, который нужно присвоить
Спасибо, то что нужно! Встроенный механизм без плагинов, хотя с плагинами тоже познакомился, лишним не будет.
Интересно, я один помню, что в Tickets есть Настройки раздела (категория), в которых указывается Шаблон дочерних документов? Один раз выбрать и пусть контент менеджер замается контентом, а туда просто не смотрит.
Это в тикетс, а тут автор не упомянул.
чтобы все остальные шаблоны вообще были убраны из списка— для этого лишние шаблоны переносятся в категорию недоступную конкретным менеджерам
Подскажите, пожалуйста, как именно? Лажу по гуглу и нигде не вижу конкретного ответа, где натраиваются сами категории?
категории в этом случае указываются как разрешенные в политике доступа для конкретной группы пользователей, например менеджеров.
Точно! Спасибо, настроила :) Не догадалась полазить по закладкам дальше)
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.