Вывожу с drupal_get_form() 2 фактически одинаковые формы:
<?php
$Form1 = drupal_get_form('user_register_form', 'ссылка1');
print drupal_render($Form1);
$Form2 = drupal_get_form('user_register_form', 'ссылка2');
print drupal_render($Form2);
?>
Но с немного разными сабмитами, аргументы передаются, но как дело доходит до редиректа начинается хуйня:
<?php
function TEMPLATE_form_user_register_form_alter(&$form, &$form_state, $form_id) {
// Здесь нормально отображаются в каждой форме разные надписи кнопок - ссылка1 или ссылка2
$form['actions']['submit']['#value'] = $form_state['build_info']['args'][0];
// А здесь всегда только ссылка1 (что за *****?)
$form_state['storage']['url'] = $form_state['build_info']['args'][0];
$form['#submit'][] = 'blablabla_goto';
}
function blablabla_goto($form, &$form_state) {
$form_state['redirect'] = $form_state['storage']['url'];
}
?>
Комментарии
В чём вопрос то?
Если формы одинаковые на одной странице надо использовать hook_forms() и делать их с разными названиями - например my_form_1 и my_form_2, используя одну function my_form()