워드프레스에서 관리자만 미디어를 업로드할 수 있고 글쓴이(Author)나 편집자(Editor)는 업로드되어 있는 미디어만 선택할 수 있도록 설정해야 하는 경우가 발생할 수 있습니다.
이 경우 다음과 같은 방법을 생각해볼 수 있습니다.
플러그인 사용하기
User Role Editor와 같은 플러그인을 사용하여 글쓴이와 편집자의 권한을 변경할 수 있습니다. 이 플러그인을 설치하고 활성화한 후에 사용자 > User Role Editor로 이동합니다.
Select Role and change its capabilities: 부분에서 글쓴이(author)를 선택한 후에 "upload_files" 부분의 체크를 해제하면 파일 업로드 권한이 제거됩니다. 반대로 "upload_files" 체크란을 선택하면 파일 업로드가 가능해집니다.
편집자(editor)에 대해서도 동일한 과정을 수행하시면 됩니다.
참고로 미디어 업로드 권한이 없는 사용자 역할에 대하여 "upload_file" 권한을 활성화시키면 해당 사용자 역할의 사용자가 로그인하여 대시보드에 접근하면 미디어를 업로드할 수 있는 메뉴가 표시됩니다.
사용자 코드 사용하기
다음으로 생각해볼 수 있는 방법으로 함수를 사용하는 것입니다. 다음과 코드가 author에 대한 upload_files(파일 업로드) 권한을 제거합니다.
$role = get_role( 'author' ); $role->remove_cap( 'upload_files' );
구체적인 적용 방법은 WordPress Codex 페이지에 자세히 설명되어 있습니다. 참고해보시기 바랍니다.
또 다른 방법으로 다음과 같은 필터를 사용할 수 있습니다.
function tomjn_only_upload_for_admin( $file ) { if ( ! current_user_can( 'manage_options' ) ) { $file['error'] = '관리자만 파일을 업로드할 수 있습니다!'; } return $file; } add_filter( 'wp_handle_upload_prefilter', 'tomjn_only_upload_for_admin' ); // Reference: wordpress.stackexchange.com
위와 같은 다양한 방법으로 미디어 파일 업로드 권한을 제한할 수 있습니다.
댓글 남기기