我也不知道你提到的功能,但我大胆猜测,这只适用于默认角色。
不过,您发布的链接确实包含一个指向正确方向的指针。它谈到了“虚拟gettext调用”,这正是您必须要做的。
在下文中,我们将调整全球$wp_roles
对象打开init
并将过滤器挂到get_option( \'wp_user_roles\' )
呼叫
function wpse92529_translatable_role_names() {
global $wp_roles;
$roles = $wp_roles->roles;
$role_names = $wp_roles->role_names;
/* define the translatable roles here */
$translated_roles = array(
\'superuser\' => _x( \'Superuser\', \'Role Names\', \'your-text-domain\' ),
\'custom-role\' => _x( \'The custom role\', \'Role Names\', \'your-text-domain\' )
);
foreach ( $roles as $role_slug => $role_info ) {
if ( array_key_exists( $role_slug, $translated_roles ) ) {
$roles[$role_slug][\'name\'] = $translated_roles[$role_slug];
$role_names[$role_slug] = $translated_roles[$role_slug];
}
}
$wp_roles->roles = $roles;
$wp_roles->role_names = $role_names;
return $roles;
}
add_action( \'init\', \'wpse92529_translatable_role_names\', 1 );
add_filter( \'option_wp_user_roles\', \'wpse92529_translatable_role_names\', 11 );
的值
$translated_roles
数组现在将出现在主题/插件中
.pot
文件