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
Este problema se ha solucionado en WPML 4.6.9. Actualizar lo soluciona en su sitio, por lo que solo necesita esta solución alternativa si aún no puede actualizar.
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.