WPML
Status
Resolvido
Relatado para
WPML Multilingual CMS 4.6.8
Resolvido em
WPML 4.6.9
Tags de tópico
Bug

Visão geral do problema

Se você tiver um usuário com uma “função personalizada”, por exemplo, “Gerente da loja” baseada na função de “Editor”, ele não poderá editar as traduções existentes.

Solução alternativa

1. Em wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/wp/classes/User.php na linha 217, altere o método – \WPML\LIB\WP\User::isEditor para:

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

2. No functions.php do tema, adicione 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';
    }
}

Altere a parte second_custom_role para o nome da sua função personalizada, neste exemplo shop_manager.

Todos os problemas conhecidos →