WordPress에서 사용자 지정 사용자 역할을 만드는 방법

게시 됨: 2021-02-06

CMS로 웹사이트를 구축할 때 유연성은 언제나 환영입니다. 고맙게도 WordPress는 고도로 맞춤화된 경험을 만들 수 있는 테마와 플러그인을 통해 점유율 이상의 것을 가지고 있습니다.

그러나 유연성은 우리가 설치할 수 있는 추가 기능을 뛰어넘습니다. 그것은 실제로 소프트웨어의 핵심에 바로 구워져 있습니다.

사용자 지정 사용자 역할을 생성하는 기능은 빛나는 예입니다. 오늘 우리는 그것들이 무엇인지, 왜 그것을 사용하고 싶은지, 그리고 그것들을 만드는 몇 가지 다른 기술을 살펴볼 것입니다.

사용자 권한에 대한 세밀한 제어

모든 WordPress 설치에서 이미 기본 사용자 역할에 대한 액세스 권한이 있습니다. 이를 통해 웹사이트의 백엔드(대시보드라고도 함)에서 사용자가 할 수 있는 것과 할 수 없는 것을 지정할 수 있습니다.

이것은 완벽한 의미가 있습니다. 콘텐츠를 관리하는 모든 사람에게 관리 권한이 필요한 것은 아닙니다. 따라서 필요에 따라 각 사용자에게 역할을 할당할 수 있습니다. 이는 훌륭한 보안 조치이며 사고나 누군가가 플러그인을 폭주 설치하는 것을 방지할 수 있습니다.

이것은 프론트 엔드에서도 작동합니다. 로그인한 사용자만 특정 콘텐츠를 볼 수 있도록 하려면 이 기능을 테마에 구축하거나 멤버십 플러그인을 통해 추가할 수 있습니다.

그러나 기본 사용자 역할(관리자, 편집자, 작성자, 기고자 및 구독자)이 유용하지만 추가 제어가 필요한 경우가 있습니다. 이것이 WordPress가 사용자 정의 역할을 생성하는 기능을 제공하는 이유입니다.

사용자 지정 역할을 사용하는 경우

사용자 지정 사용자 역할은 여러 시나리오에서 유용할 수 있습니다. 다음은 직면할 수 있는 몇 가지 일반적인 문제입니다.

다양한 콘텐츠 유형을 관리하는 사용자가 있습니다.

기본적으로 WordPress에는 게시물 및 페이지의 두 가지 주요 공개 콘텐츠 유형이 있습니다. 그러나 사용자 정의 포스트 유형을 사용하면 더 쉽게 추가할 수 있습니다. 예를 들어 보도 자료나 직원과 같은 게시물 유형을 만들 수 있습니다. 또한 다양한 플러그인이 자체 게시물 유형도 설치할 수 있습니다.

대규모 조직에는 여러 유형의 콘텐츠가 있을 수 있으며 각 콘텐츠를 관리할 특정 사람을 염두에 두고 있습니다. 이 경우 기본 사용자 역할은 전체 로트(또는 설정에 따라 반대)에 대한 액세스를 제공할 수 있으므로 이상적이지 않습니다. 그러나 사용자 지정 역할을 사용하면 다른 사용자가 할당한 게시물 유형만 볼 수 있습니다.

사용자는 한 가지만 하면 됩니다.

사용자가 웹사이트의 기능에 고유한 수준의 액세스 권한이 필요한 경우가 있습니다. 예를 들어 온라인 과정을 운영한다고 가정해 보겠습니다. 올바르게 작동하고 내용이 정확한지 확인하기 위해 프런트 엔드 및 백 엔드의 전체 코스에 액세스해야 하는 팀 구성원이 있을 수 있습니다.

이 팀원이 과정 자체에만 집중해야 하는 경우 관리자 계정이 과도할 수 있습니다. 사용자 지정 사용자 역할을 사용하면 불필요한 옵션을 거치지 않고 작업을 수행할 수 있습니다.

기존 역할을 "레벨 업"해야 합니다.

때로는 기존 WordPress 사용자 역할이 거의 완벽합니다. 그러나 사용자가 액세스해야 하는 추가 항목이 하나 더 있을 수 있습니다.

작성자 역할을 수행합니다. 기본적으로 게시물은 게시할 수 있지만 페이지는 게시할 수 없습니다. 일반적으로 사용자를 Editor로 올려야 합니다. 어떤 경우에는 괜찮을 수 있습니다. 그러나 이 특정 사용자가 액세스하지 못하도록 하는 다른 기능이 포함될 수 있습니다. 여기서 사용자 지정 역할을 만드는 것이 가장 좋은 방법일 수 있습니다.

사용자 지정 사용자 역할을 만드는 방법

사용자 지정 WordPress 사용자 역할을 만드는 방법에는 두 가지가 있습니다. 첫 번째는 사용자 정의 플러그인이나 테마의 functions.php 파일에 일부 코드를 추가하는 것입니다. 두 번째는 역할을 만들고 편집할 수 있는 많은 사용 가능한 플러그인 중 하나를 설치하는 것입니다.

사용하는 방법은 개인 취향에 따라 다릅니다. 시각적인 방식으로 사용자 기능을 선택하고 선택할 수 있는 기능을 원한다면 플러그인이 가장 적합합니다. 그러나 코드에 익숙하거나 다른 관리자가 설정을 사용하는 것을 원하지 않는 경우 스니펫을 추가하는 것이 좋습니다.

어느 쪽이든, 몇 가지 코드 예제와 플러그인 선택으로 시작하겠습니다.

먼저 WordPress가 제공하는 다양한 사용자 기능에 대해 공부하는 것이 좋습니다. 또한 사용자 정의 게시물 유형에는 사용자 정의 기능도 있을 수 있습니다. 이것은 위에서 언급한 첫 번째 예제 시나리오에서 유용할 수 있습니다.

방법 #1: 코드 조각 추가

이 예에서는 "직원 구성원"이라는 사용자 역할을 생성합니다. 여기에는 작성자 역할의 모든 기능이 포함되지만 페이지를 편집하고 게시하는 추가 기능이 포함됩니다.

역할에 할당하는 각 기능은 아래 스니펫에 나열되어 있으며 " true "로 설정되어 있습니다. 여기서 예외는 이 역할을 가진 사용자가 게시된 페이지를 삭제하는 것을 원하지 않으므로 안전을 위해 명시적으로 " false "로 설정한다는 것입니다.

다시 말하지만, 이 코드는 테마의 functions.php 파일로 이동하거나 선택적으로 사용자 정의 플러그인으로 이동합니다.

 /* Create Staff Member User Role */ add_role( 'staff_member', // System name of the role. __( 'Staff Member' ), // Display name of the role. array( 'read' => true, 'delete_posts' => true, 'delete_published_posts' => true, 'edit_posts' => true, 'publish_posts' => true, 'upload_files' => true, 'edit_pages' => true, 'edit_published_pages' => true, 'publish_pages' => true, 'delete_published_pages' => false, // This user will NOT be able to delete published pages. ) );

이 코드를 저장하고 브라우저에서 웹사이트를 새로 고치면 이 역할을 가진 새 사용자를 추가할 수 있습니다.

워드프레스 새 사용자 추가 화면.

Staff Member 역할을 가진 사용자가 로그인하면 페이지와 게시물을 모두 볼 수 있습니다.

로그인한 사용자는 게시물과 페이지를 봅니다.

다른 대안은 단순히 기존 작성자 역할에 몇 가지 기능을 추가하는 것입니다. add_cap() 함수를 통해 이 작업을 수행할 수 있습니다.

 /* Upgrade the Author Role */ function author_level_up() { // Retrieve the Author role. $role = get_role( 'author' ); // Let's add a set of new capabilities we want Authors to have. $role->add_cap( 'edit_pages' ); $role->add_cap( 'edit_published_pages' ); $role->add_cap( 'publish_pages' ); } add_action( 'admin_init', 'author_level_up');

이 두 코드 조각은 기본적으로 동일한 작업을 수행합니다. 그러나 이미 작성자 역할을 가진 사용자가 있고 추가 기능을 원하지 않는 경우 새 직원 구성원 역할을 추가하는 것이 가장 좋습니다.

방법 2: 플러그인 사용

위의 기능은 플러그인을 사용하여 쉽게 복제할 수 있습니다. 이러한 유형의 사용자 역할 및 기능 관리를 위해 몇 가지가 만들어졌습니다. GUI를 활용하고 전체 프로세스에 편의를 제공한다는 장점이 있습니다.

더 인기 있는 몇 가지 옵션을 살펴보겠습니다.

사용자 역할 편집자

사용자 역할 편집기를 사용하면 역할에 대한 기능을 추가하거나 제거하는 것이 설정에서 상자를 선택하거나 선택 취소하는 것처럼 간단합니다. 또한 사용자 지정 사용자 역할을 만들고 필요한 기능을 설정할 수 있습니다. 플러그인은 WordPress의 다중 사이트 설치도 지원합니다.

WPFront 사용자 역할 편집자

WPFront 사용자 역할 편집기는 사용자 역할을 추가하거나 편집할 수 있는 유사한 기능을 제공합니다. 그러나 관리자는 또한 사용자를 한 역할에서 다른 역할로 마이그레이션하고 개별 사용자에게 여러 역할을 할당할 수 있습니다.

고급 액세스 관리자

더 넓은 범위의 것을 찾고 있다면 Advanced Access Manager가 좋은 선택이 될 수 있습니다. 역할 및 기능 관리와 함께 메뉴 및 위젯과 같은 프론트엔드 및 백엔드 기능에 대한 액세스를 제어하는 ​​기능을 제공합니다.

당신의 역할을 알고

사용자 정의 사용자 역할을 생성하는 기능은 WordPress를 좋아하는 또 하나의 이유일 뿐입니다. 매우 틈새 시장이지만 기본 역할을 넘어선 무언가가 필요할 때 매우 유용할 수 있습니다.

따라서 다음에 사용자 기능을 제어해야 하는 상황에 처했을 때 이 강력한 도구를 사용할 수 있다는 사실을 알아두십시오.