Только начал использовать drupal, вопрос возможно поднимался, но я не нашел, поэтому не пинать.
Задача разрешить пользователям, включая гостей создавать ноды. Создаю новый тип, с соответствующими настройками, разрешаю пользователям и гостям создание ноды. Они создают, затем я просматриваю в админке, и если все нормально вывожу на главную. Но досадная мелочь, что после создания ноды, они автоматом переходят на страницу своего поста, который еще не опубликован и соответственно получают запрет на страницу. Вопрос собственно как предопределить поведение после создания ноды(скажем показать сообщение о том что сообщение принято к модерации) простейшим путем. В последствии конечно буду писать нормальный модуль, но сейчас нужно простейшее рабочее решение, буду рад любому совету куда копать.
Комментарии
Модули Actions+Trigger (возможно, Rules). Можно задать вывод собщения после добавления ноды.
Или можно дописать к ссылке на создание ноды GET-параметр destination. Например так:
http://www.example.com/node/add/story?destination=path/to/message/page
Здесь path/to/message/page - это путь до страницы, где написано, что, мол, нода принята, спасибо, друг!
Как все оказывается элементарно!
Первый вариант не прошел, насколько я понял модуля Actions нет для 6 версии, да и запутано мне там кажется что-то.
А второй вариант действительно простой и рабочий, мне все больше начинает нравиться друпал
Не знаю насколько идеологически верно, но с помощью темизации сделал:
<?php
function phptemplate_form($element) {
if ( $element['#id'] =='node-form' && isset($element['#parameters'][0]) &&
$element['#parameters'][0] == 'my_node_form') {
$element['#action'] .= '?destination=confirm_add';
}
theme_form($element);return
}
?>
Спасибо тебе, Химический Али
А злые конкуренты клевещут на друпалистов, мол сообщество скверное, помощи не жди, эх лукавят