WPML
Stato
Risolto
Segnalato per
WPML Multilingual CMS 4.6.8
Risolto in
WPML 4.6.9
Tag dell’argomento
Bug

Panoramica del problema

Se hai un utente con un “Ruolo personalizzato”, ad esempio “Gestore negozio” basato sul ruolo “Editore”, non potrà modificare le traduzioni esistenti.

Soluzione alternativa

1. In wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/wp/classes/User.php alla riga 217, modifica il metodo – \WPML\LIB\WP\User::isEditor in:

public static function isEditor(WP_User $user = null) {
$capability = "editor";
$capability = apply_filters('wpml_editor_capability', $capability );
return self::hasCap( $capability, $user );
}

2. Nel file functions.php del tema aggiungi questo codice:

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';
    }
}

Sostituisci la parte second_custom_role con il nome del tuo ruolo personalizzato, in questo esempio shop_manager.

Tutti i problemi noti →