워드프레스에서 사용자들에게 역할(Role)을 부여하여 역할에 따라 할 수 있는 작업이 제한될 수 있습니다. 기본적으로 워드프레스에서 회원으로 가입하면 '구독자' 역할이 할당됩니다.
회원으로 가입하는 새 사용자들에게 부여될 기본 역할(회원 등급)은 워드프레스 알림판 > 설정 > 일반 > 멤버쉽에서 "새 사용자를 위한 기본 규칙" 옵션을 통해 지정할 수 있습니다.
우커머스 쇼핑몰을 운영하는 경우 '고객' 역할을 부여할 수도 있습니다.
그리고 새로운 회원 등급(역할)을 생성하는 것도 가능합니다.
지난주에 조금 특이한 작업을 맡았습니다. 아마 다른 사이트의 회원 DB를 워드프레스에 임포트한 것으로 보이는데, 16만 명 이상의 회원이 '역할 없음' 권한이 지정되어 있었습니다.
'역할 없음' 회원들의 권한을 '고객'으로 변경하는 일을 맡았습니다. 참고로 일괄적으로 회원들의 권한을 변경하는 것이 가능합니다.
하지만 이렇게 많은 회원들의 권한을 수동으로 변경하려면 족히 몇 시간은 걸릴 것 같습니다. 이런 단순 작업을 하다 보면 스트레스를 엄청 받고, 작업을 하면서도 왜 이런 무의미하게 보이는 일을 하는지 자괴감이 들 수도 있습니다.ㅎ
저는 phpMyAdmin 클라이언트 툴로 DB에 접속하여 DB 작업을 통해 비교적 빨리 작업을 마칠 수 있었습니다. 이런 작업을 하려면 DB에 접속하여 '권한 없음' 회원들의 속성을 파악한 후에 일괄 변경하는 코드를 작성하여 실행하면 됩니다.
"Change WordPress User role from Database using PHPMyAdmin"라는 글에서 다음과 같은 쿼리를 이용하여 권한을 변경하는 예가 설명되어 있습니다.
UPDATE wp_usermeta SET meta_value=’a:1:{s:13:"administrator";b:1;}’ WHERE user_id=2 AND meta_key=’wp_capabilities’
위의 SQL 쿼리를 상황에 맞게 응용할 수 있습니다.