2013-04-20 4 views
0

기록 된 모든 사용자를 프로필의 특정 페이지로 리디렉션하려고합니다.이 예제 페이지를 참조하십시오. 이 사이트는 wp 및 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); 
     } 
    } 
} 

그래서이 플러그인을 사용 후 난 때 자동으로 프로필 페이지에 내 사용자를 리디렉션 할 수 있어요 ... 문제는이 코드를 볼 수 ... 홈페이지 플러그인으로 BP 프로필을 사용하고 그들이 직접 활동의 하위 페이지가 있습니다 http://www.example.com/members/admin/

.. 로그인하지만 난이 페이지

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

모든 활동을 리디렉션 할 나는 모든 활동을 사용자에게 보여주는 사이트입니다. 활동을보기 위해 사이트 전체 활동 페이지에서 보내고 싶지 않습니다. 내 프로필 페이지에 모든 것을 보여주고 싶습니다.

이 코드에 추가하려면 wp_redirect ($ bp-> loggedin_user-> domain);

는 .... 내 요구 사항과이 가능한 만들려면 내 요구 사항은 가능한 만들기위한 많은 트릭을 시도했지만 success..i을하지 않는이 코드를 가진

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

를 대체하는 시도 이 하나 ... $ redirect_url = "$ bp-> loggedin_user-> 도메인/활동/모든 활동 /";
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

추가 redirect 문 앞에 'if (is_user_logged_in())'가 있어야합니다. 또한 exit를 잊지 마라. http://codex.wordpress.org/Function_Reference/wp_redirect – diggy

+0

위의 재 작성된 코드를 보라. 이미 사용하고있다 .. 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);