워드프레스에서 특정 사용자 유형의 사용자 권한 지정하기

참고: 인기 테마인 BE 테마(33%)The 7(35%) 할인 행사를 진행하고 있습니다.
참고

플러그인 사용

워드프레스에서 새로운 사용자 레벨을 추가하거나 기존 사용자 유형의 권한을 수정하려면 User Role Editor와 같은 플러그인을 사용할 수 있습니다. 예를 들어, User Role Editor를 설치한 후에 알림판의 사용자 > User Role Editor로 이동하는 원하는 사용자 유형의 권한(Permission)을 변경할 수 있습니다.

User Role Editor - 워드프레스위의 그림에서는 author(글쓴이) 사용자 유형의 권한을 변경할 수 있는 화면입니다. 이와 같이 플러그인을 사용하면 수월하게 사용자 유형의 권한을 수정할 수 있습니다.

add_action 함수 사용

플러그인을 사용하지 않고 직접 코드를 사용하려는 경우 다음과 같은 형식으로 테마의 함수 파일(functions.php)에 추가할 수 있습니다.

if ( ! function_exists( 'writer_set_roles' ) ):
function writer_set_roles()
{
global $wp_roles;
// 글/페이지 편집
$wp_roles->add_cap('author','edit_others_pages'); // author가 다른 페이지를 수정할 수 있도록 허용
$wp_roles->add_cap('author','edit_published_pages'); // author가 발행된 페이지를 수정할 수 있도록 허용
$wp_roles->add_cap('author','edit_private_pages');  // author가 private 페이지를 수정할 수 있도록 허용
$wp_roles->add_cap('author','publish_pages');  // author가 페이지를 발행할 수 있도록 허용
$wp_roles->add_cap('author','delete_pages');  // author가 페이지를 삭제할 수 있도록 허용
$wp_roles->add_cap('author','delete_others_pages');  // author가 다른 페이지를 삭제할 수 있도록 허용
$wp_roles->add_cap('author','delete_others_posts');  // author가 다른 글을 삭제할 수 있도록 허용
$wp_roles->add_cap('author','delete_published_pages');  // author가 발행된 페이지를 삭제할 수 있도록 허용
$wp_roles->add_cap('author','manage_categories');  // author가 카테고리를 관리할수 있도록 허용

// 외모
$wp_roles->add_cap('author','edit_themes');  // author가 테마를 편집할 수 있도록 허용
$wp_roles->add_cap('author','edit_theme_options');  // author가 테마 옵션을 편집할 수 있도록 허용
$wp_roles->add_cap('author','manage_widgets');  // author가 위젯을 관리할 수 있도록 허용
$wp_roles->add_cap('author','edit_widgets');  // author가 위젯을 수정할 수 있도록 허용

// 플러그인 권한 예제
$wp_roles->add_cap('author','NextGEN Gallery overview');
$wp_roles->add_cap('author','NextGEN Use TinyMCE');
$wp_roles->add_cap('author','NextGEN Upload images');
$wp_roles->add_cap('author','NextGEN Manage gallery');
$wp_roles->add_cap('author','NextGEN Manage others gallery');
}
endif;
add_action( 'after_setup_theme', 'writer_set_roles' );
// Source: http://wordpress.stackexchange.com

위의 add_action 함수에서는 author(글쓴이)에 새로운 권한을 부여하는 예를 보여줍니다. author 대신에 contributor(기여자), editor(편집자), 사용자 지정 사용자 유형 등에 응용할 수 있습니다.

워드프레스의 역할과 권한에 대한 자세한 내용은 WordPress Codex 페이지를 참고하시기 바랍니다. 이 Codex 페이지에 나오는 권한은 사용자 권한별로 제한할 때에도 사용할 수 있습니다. 이 글에서 특정 글/페이지/카테고리에 액세스 제한하는 방법을 설명하고 있습니다. 이 글에서 회원 역할별로 제한하는 방법을 보여주는 데, 이 보다는 권한별로 사용하는 것이 더 효율적일 수 있습니다. 예를 들어, 관리자일 경우 if( current_user_can( ‘administrator’ ) ) 코드 대신

if ( current_user_can( 'activate_plugins' ))

형태를 사용할 수 있습니다.  관리자 아닐 경우에는 다음과 같은 코드를 사용할 수 있습니다.

if ( !current_user_can( 'activate_plugins' ))

 



기부를 통해 이 블로그를 후원하실 수 있습니다.
워드프레스 설치/제작/문제해결이 필요한 경우 서비스(유료)를 요청해주세요.