답변:
function change_role_name() {
global $wp_roles;
if ( ! isset( $wp_roles ) )
$wp_roles = new WP_Roles();
//You can list all currently available roles like this...
//$roles = $wp_roles->get_names();
//print_r($roles);
//You can replace "administrator" with any other role "editor", "author", "contributor" or "subscriber"...
$wp_roles->roles['administrator']['name'] = 'Owner';
$wp_roles->role_names['administrator'] = 'Owner';
}
add_action('init', 'change_role_name');
http://www.garyc40.com/2010/04/ultimate-guide-to-roles-and-capabilities/
$wp_roles
이제 [role_objects]
배열의 일부를 가지고있는 것 같습니다 .
간단한 해결책은을 사용하여 사용자 역할을 추가하는 add_role
것입니다. 이렇게하면 원하는 이름을 지정하고 원하는 기능을 추가 할 수 있습니다.
http://codex.wordpress.org/Function_Reference/add_role
실제로는 여러 가지 방법으로이를 달성 할 수 있습니다.
함께 순수 PHP와 MySQL 당신은 DB에 직렬화 된 항목을 편집 할 수 있습니다. 실제로 Wordpress는 일련의 역할 배열을 wp_options
테이블에 저장 합니다.
그래서:
SELECT option_value as serialized_string FROM wp_options WHERE option_name = 'wp_user_roles';
$rolesArray = unserialize($serialized_string)
$rolesArray['role_key']['name'] = "New name"
echo serialize($rolesArray)
option_value
내용을 이전 지점의 출력으로 바꿉니다.Wordpress에 대해 확신이 있다면 wp-cli에 포함 된 Wordpress REPLget_option('wp_user_roles')
을 사용 하여 저장된 값을 가져 와서 update_option
업데이트 할 수 있습니다.
그리고 (항상) 옵션 조작 전에 db를 백업해야합니다.)
… wp-cli로이 를 달성하는 것은 매우 쉽습니다 .
$ wp role create new_role 'New Role' --clone=old_role
$ wp role delete old_role
사용자 정의 현지화 파일을 작성할 수 있습니다. http://svn.automattic.com/wordpress-i18n/pot/trunk/wordpress.pot 파일 을 가져 와서 PoEdit 도구를 사용하여 편집 하십시오 (예 :). 다음 단계에서 현지화 파일을 en_GB.mo (또는 기타)로 저장하고 wp-config 파일을 편집하십시오.
정의 ( "WPLANG", "en_GB");