Drupal 7: перенаправить комментарии в представлении - PullRequest
0 голосов
/ 31 января 2012

Цель:

У меня есть вид, который отображает несколько узлов в полном объеме, включая комментарии. Я хочу перенаправить пользователей, которые комментируют, используя мое представление, обратно к представлению, а не к статье.

В то же время, если пользователь комментирует узел и НЕ использует МОЙ ВИД, они не должны перенаправляться. Другими словами, редирект будет использоваться только на мой взгляд.

Мой код ниже работает хорошо, но, к сожалению, все формы комментариев сайтов начинают перенаправлять. Я только хочу перенаправить пользователей, которые используют мой вид панели, на путь / newvc для перенаправления.

Мой код:

function customchatter_form_comment_form_alter(&$form, &$form_state, $form_id){

$form['#submit'][] = 'submitForm';
}

function submitForm($form, &$form_state) {
$form_state['redirect'] = 'newvc'; // need to redirect
}

Моя логическая проблема:

Я не могу понять логику, которая позволила бы мне изолировать комментарии, приходящие от моего взгляда.

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

$url_components = explode('/', request_uri());


if ($url_components[1]=='comment' && $url_components[2]=='reply') {
// no use as this still targets all the comments.
}

Ответы [ 2 ]

0 голосов
/ 10 февраля 2012

Я решил это с помощью приведенного ниже кода. $ _POST ['submissionpath'] содержит путь к исходной странице.

function submitForm($form, &$form_state) {

print $form;
$form_state['redirect'] =$_POST['submissionpath'];
}
0 голосов
/ 06 февраля 2012

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

Вам нужно либо проанализировать HTTP_REFERER, либо добавить? Destination = path_to_the_view к вашей ссылке из представления - после отправки формы она будет перенаправлена ​​на указанный путь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...