В моем пользовательском модуле я хотел бы добавить функциональность комментариев. Я пробовал пару вещей, но пока не тренировался.
// render comments form
$output .= theme('my_module_front_page');
$comment = new stdClass;
$comment->nid = $node_good_practice->nid;
$output .= render(drupal_get_form('comment_form', $comment));
return $output;
Вышеприведенный код помещает форму комментариев на мою страницу node.
Но когда я заполняю форму комментария и отправлю, он перенаправляет меня на эту страницу: comment/reply/node id
, а затем я должен заполнить свой комментарий снова и комментарий не сохраняется.
Я бы хотел отправить и остаться на одной странице вместо перенаправления. И комментарий должен быть сохранен после отправки.
В настоящее время форма комментария отображается на моей странице node (шаблон настраиваемого модуля). Я ввожу комментарий и нажимаю "Сохранить".
Я отправлен в /comment/reply/<node_id>
, но все поля комментариев пустые. Комментарий не сохраняется.
Мне бы хотелось:
- Наличие формы комментария на странице node
- Введите комментарий
- Нажмите "Сохранить"
- Drupal сохраняет комментарий и перенаправляет меня на страницу node/, которую я просматривал.
Вещи, которые я пробовал
-
Добавление перенаправления
$form['#redirect'] = "/success-stories/".$node_good_practice->good_practice_name."/".$node_good_practice->nid;
Это ничего не изменило.
-
Изменение действия
$form['#action'] = "/success-stories/".$node_good_practice->good_practice_name."/".$node_good_practice->nid;
Он перенаправляет меня на
node/node_id/#comment-17
-
Используйте
drupal_build_form()
$info->nid = $node_good_practice->nid; $comment['build_info']['args'][0] = $info; $comment['redirect'] = "http://www.google.nl"; $output .= render(drupal_build_form('comment_form', $comment));
Форма отображается, но она не перенаправляется; он отправляется на
comment/reply/node_id
.