2012-06-18 2 views
1

На Drupal 7 Я хочу перенаправить на главную страницу на бэкэнд, когда я отправлю срок; по умолчанию, если вы отправляете срок пребывания на той же странице добавления.Переадресация при отправке таксономии Drupal 7

У меня есть этот код ..

function MODULE_form_taxonomy_form_term_alter(&$form, &$form_state, $form_id) { 
     if($form['#term']['vocabulary_machine_name'] == 'foo') { 
      $form['actions']['submit']['#submit'][]='form_foo_submit'; 
     } 
} 

function form_foo_submit($form, &$form_state) { 
    $form_state['redirect'] = 'admin/content/foo_view_list'; 
} 

Ну, я положил их на Drupal 7 и работает нормально, но этот термин не сохраняет правильно!

Может кто-нибудь мне помочь? Спасибо!

+1

Другим способом было бы добавить **? Назначения = админ/содержание/foo_view_list ** в конце термина страницы URL. Поэтому вам может быть проще изменить ссылку. –

ответ

0

Try drupal_goto вместо редиректа подхода:

function form_foo_submit($form, &$form_state) { 
    ... 
    ... 
    drupal_goto('admin/content/foo_view_list');' 
} 

ли, что в конечном итоге работает?

0

Вы должны изменить код, чтобы быть что-то вроде:

function MODULE_form_taxonomy_form_term_alter(&$form, &$form_state, $form_id) 
{ 
    if($form['#term']['vocabulary_machine_name'] == 'foo') 
    { 
     $form['#redirect'] = 'YOUR_NEW_PATH'; 
    } 
} 

Надеется, что это помогает ... Мухаммаду.

0
function MODULE_form_taxonomy_form_term_alter(&$form, &$form_state, $form_id) { 
     if($form['#term']['vocabulary_machine_name'] == 'foo') { 
      $form['#submit'][]='form_foo_submit'; 
     } 
} 
function form_foo_submit($form, &$form_state) { 
    $form_state['redirect'] = 'admin/content/foo_view_list'; 
} 

этот пример работает для меня

Смежные вопросы