- Estado
- Resuelto
- Notificado para
- WPML Multilingual CMS 4.6.8
- Resuelto en
- WPML 4.6.9
- Etiquetas de temática
- Bug
Resumen del problema
Si tiene un usuario con un «Rol personalizado», por ejemplo, «Gestor de tienda» basado en el rol de «Editor», no podrá editar las traducciones existentes.
Solución alternativa
1. En wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/wp/classes/User.php, en la línea 217, cambie el método – \WPML\LIB\WP\User::isEditor por:
public static function isEditor(WP_User $user = null) {
$capability = "editor";
$capability = apply_filters('wpml_editor_capability', $capability );
return self::hasCap( $capability, $user );
}
2. En el archivo functions.php del tema, añada este código:
add_filter('wpml_editor_capability', 'my_editor');
function my_editor(){
$user = wp_get_current_user();
if (in_array('second_custom_role', (array)$user->roles, true)){
return 'second_custom_role';
}
}
Cambie la parte second_custom_role por el nombre de su rol personalizado, en este ejemplo shop_manager.