1

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 に置き、正常に動作しますが、用語が正しく保存されません!

誰でも私を助けることができますか?どうも!

4

3 に答える 3

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';
}

この例は私のために働く

于 2015-01-23T16:38:45.383 に答える
0

リダイレクト アプローチの代わりに drupal_goto を試してください。

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

それは結局うまくいきますか?

于 2012-06-18T16:36:07.623 に答える
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';
    }
}

これが役に立てば幸いです...ムハンマド。

于 2012-06-19T07:32:45.723 に答える