2014-06-10 2 views
0

나는 관리자와 워드 프레스에서 프로필을 가진 사용자들과 웹 사이트를 끝냈다. 그러나 내 고객은 나를 워드 프레스 사용자 프로필에서 차단하길 원한다.사용자가 워드 프레스 '사용자 프로필에 도착하는 것을 멈추는 방법

사용자는 "http://www.domain.com/wp-admin"을 입력하면 wordpress 대시 보드를 볼 수 있으며 해당 사용자는 변경할 수 없으며 "대시 보드"및 "프로필"섹션에만 액세스 할 수 있습니다. 그에게 권력을주지 마라.

그러나 고객이이 페이지에서 일반 사용자를 차단하려고합니다.

어떻게하면됩니까? 절대 어떤 종류의 리디렉션은 멤버 페이지를 가지고 있는지 알 - 그렇다면

감사

는 아래의 테스트는 현재 사용자 역할에 로그인 한 경우, '가입자'
+0

개인적으로, 이것이 워드 프레스 관리자 패널에 액세스 기여자 (최저 역할을) 제한 전염병 : 그것의 admin 공구를 숨기기에있는 거창한 어려움 –

+0

WPSE에이 스레드를보십시오 : http://wordpress.stackexchange.com/questions/11244/how-to- restrict-dashboard-access-to-admins-only – cpilko

답변

1
당신은 로그인 리디렉션 필터를 사용할 수 있습니다

입니다 신분증은 get_permalink()을 사용하여 반환 할 수 있습니다. 현재 사용자 역할이 'Administrator'이면 대시 보드에 배치하십시오. 관리자 또는 가입자가 아닌 경우 또는 어떤 이유에서든 사용자 역할을 모르는 경우 당사 웹 사이트의 첫 페이지로 리디렉션하십시오. 테마를 functions.php 파일에 넣을 수 있습니다. 내가 좋아하는 WP을 피할 이유 wp-content -> themes -> your-theme

/** Redirect Members to Member Pages **/ 
function member_redirect($redirect, $request, $user) 
{ 
    global $user; 
    if(isset($user->roles) && is_array($user->roles)) 
    { 
     if(in_array("subscriber", $user->roles)) 
      return "ABSOLUTE_URL_HERE - maybe use get_permalink()"; 
     else if(in_array("administrator", $user->roles)) 
      return admin_url('index.php'); 
     else 
      return home_url(); 
    } 
    else{ 
     return home_url(); 
    } 
} 
add_filter("login_redirect", "member_redirect", 10, 3); 
+0

고마워, 나는이 워드 프레스 물건에 좀 새로운이야, 내가이 조각 코드를 어디에 놓아야하는지 말해 줄래? –

+0

죄송합니다, 테마'functions.php' 파일에 넣을 수 있습니다 –

0

/** * */

function restrict_user() { 

    if (! current_user_can('edit_post')) { 
     wp_die(__('You are not allowed to access this part of the site')); 
    } 
} 
add_action('admin_init', 'restrict_user', 1); 
0

사용이

function restrict_user_wpadmin() { 
    if (! current_user_can('edit_post')) { 
     wp_redirect('/'); 
     exit; 
    } 
} 
add_action('admin_init', 'restrict_user_wpadmin', 1); 
관련 문제