2013-04-20 5 views
0

Я пытаюсь перенаправить каждого зарегистрированного пользователя на определенную страницу своего профиля ... См. Эту страницу примера. Этот сайт построен на wp и bp. Я использую BP Профиль в качестве домашней страницы плагина для зарегистрированного в перенаправлении пользователя ... это увидеть этот код ...Как перенаправить зарегистрированных пользователей на пользовательскую страницу в buddypress & wordpress

function bp_profile_homepage() 
{ 
    global $bp; 
    $selected_role = get_option('bpahp_role_choice'); 
    if($selected_role == '') 
    { 
     if(is_user_logged_in() && bp_is_front_page()) 
     { 
      wp_redirect($bp->loggedin_user->domain); 
     } 
    } 
    else 
    { 
     if(!current_user_can($selected_role) && bp_is_front_page()) 
     { 

      wp_redirect($bp->loggedin_user->domain); 
     } 
    } 
} 

Таким образом, после использования этого плагина я могу автоматически перенаправить мой пользователь страницы своего профиля, когда они авторизовались .. http://www.example.com/members/admin/

, но я хочу, чтобы перенаправить их на этой странице

http://www.example.com/members/admin/activity/all-activity/

Вся деятельность является вспомогательной страницы деятельности прямой ory, в котором я показываю все действия для пользователей sitewide .. Я не хочу отправлять их на странице активности на весь сайт для просмотра активности. Я хочу показать им все, что на странице их профиля.

Итак, любая идея, добавить в этот код wp_redirect ($ bp-> loggedin_user-> domain);

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

wp_redirect($bp->loggedin_user->domain); 

с этот ... $ redirect_url = "$ bp-> loggedin_user-> domain/activity/all-activity /";
wp_redirect ($ redirect_url);

И это один

$redirect_url = "activity/all-activity/"; 
    wp_redirect($bp->loggedin_user->domain/$redirect_url); 

Ничто не работает Пожалуйста, кто-нибудь мне помочь ..

ответ

0

насчет:

wp_redirect($bp->loggedin_user->domain . '/activity/all-activity/');

+0

Ваше решение не работает должным образом. Я перенаправляю пользователя на http://www.example.com/members/admin/activity/all-activity/, но ... если пользователь не вошел в систему и он пытается открыть домашнюю страницу веб-сайта, поэтому перенаправляет его на страницу http://www.example.com/activity/all-activity/, которая не создана на моем сайте, поэтому она дает ошибку 404. – Kapil

+0

Добавить 'if (is_user_logged_in())' перед оператором перенаправления. Также не забудьте «exit;», см. Http://codex.wordpress.org/Function_Reference/wp_redirect – diggy

+0

просто просмотрите вышеупомянутый перезаписанный код. Я уже использую его bro .. if (is_user_logged_in() && bp_is_front_page ()) – Kapil

0

Ниже код используется для перенаправления использования в BuddyPress страница профиля после входа в систему

function bp_help_redirect_to_profile(){ 
    global $bp; 
    if(is_user_logged_in() && is_front_page()) { 
    bp_core_redirect(get_option('home') . '/members/' . 
    bp_core_get_username(bp_loggedin_user_id()) . '/profile'); 
    } 
} 
add_action('get_header', 'bp_help_redirect_to_profile',1); 
Смежные вопросы