2010-06-09 2 views
3

hi Я написал модуль для создания пользовательских страниц. После входа в систему путь переходит к пользователям/[имя_пользователя], и я хочу настроить его с помощью моего модуля. как справиться с этим?drupal user login redirect

ответ

3

Вы можете использовать Войти Тобогган установить логин назначения. Существует несколько модулей, доступных для переадресации имени без необходимости кодирования.

Чтобы настроить внешний вид страницы пользовательского профиля, вы можете реализовать это с помощью TPL с помощью CSS или использовать представления для создания панелей содержимого вместе с панелями и переопределить представление профиля пользователя /%.

2

С hook_form_alter вы можете создать представить обработчик для формы входа в систему, и в нем установлен $form_state['redirect'], где вы хотите, чтобы пользователь будет перенаправлен при входе пользователя в систему.

2

Вы можете реализовать hook_user fonction, как это

function mymodule_user($op, &$edit, &$account, $category=NULL) { 
switch ($op) { 
    case 'login': // user just logs in... 
         // Modify $_REQUEST['destination']; 
         // but no drupal_goto in order 
         // to avoid problem with other hook 
    break; 
} 
} 

Подробнее здесь: http://www.youtube.com/watch?v=UoeFTr124jw

+1

Использование drupal_goto крючком, большой НЕТ НЕТ, он нарушит работу других модулей, реализующих hook_user. – googletorp

+0

Хорошо, так что лучше использовать $ _REQUEST ['destination']. Я изменю свой пост. –

2

Да, вы можете сделать это и многое другое с Login Toboggan, но если вы просто хотите, чтобы перенаправить, где пользователи попадают после входа в систему попробуйте модуль Войти назначения: (D6 & D7)