我正在寻找一种简洁的方法来获取 Wordpress 角色显示名称。
当您添加角色 (例如 add_role( 'special', 'A Special Role');
),您可以设置显示名称。
当您获取角色 (例如 get_role( 'special' );
)返回的角色对象仅具有名称和功能对象。
WP_Role Object(
[name] => special
[capabilities] => Array() )
和 否 显示名称。显示名称在 WP Admin 后端(users.php 和 user-edit.php)中使用,但它是一个兔子窝……而且我还没有找到可以返回它的函数。您可以在
wp_user_roles
中轻松看到它排在wp-options
table - 我当然不需要去那里吗?
最佳答案
如果您运行的是非英文 WordPress 站点并希望显示正确的(翻译的)角色名称,如所有 WordPress 管理页面中显示的那样,请按以下步骤操作:
global $wp_roles;
echo translate_user_role( $wp_roles->roles[ $role ]['name'] );
哪里
$role
是角色名称(即原始问题中的 'special'
)。注:translate_user_role是一个 WordPress 核心,但没有详细记录的功能。
关于Wordpress 角色显示名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25059638/