Je viens de créer un nouveau blog pour un ami et je pense qu'il est préférable de ne pas lui donner immédiatement l'accès administrateur par mesure de précaution.
J'ai donc créé un nouvel utilisateur en tant qu'éditeur.
Mais alors j'ai vu que cet utilisateur ne peut pas changer les paramètres du thème comme fond et en-tête.
Existe-t-il un moyen simple d’autoriser le rôle d’éditeur à modifier des paramètres de thème dans Twenty Ten ou un enfant de celui-ci? Il devrait fondamentalement pouvoir faire tout ce qu'un administrateur peut faire reg. le thème, probablement même changer de thème.
vous pouvez ajouter des fonctionnalités au rôle d'éditeur à l'aide de l'objet role et de add_cap à partir de votre fichier functions.php
<?php
// get the the role object
$editor = get_role('editor');
// add $cap capability to this role object
$editor->add_cap('edit_theme_options');
?>
vous pouvez également supprimer des fonctionnalités:
$editor->remove_cap('delete_posts');
il suffit de jeter un coup d’œil à la liste de capacités et à la signification de chacune d’elles.
Comme c'est le premier coup sur Google pour cette question, je pense que c'est le bon endroit pour une mise à jour:
Pour moi, je ne pouvais pas le faire fonctionner via edit_theme_options
. Ensuite, j'ai lu le code source du plugin et découvert qu'il s'agissait en réalité de manage_options
. Et ça a marché.
tl; dr:
$role_object = get_role( 'editor' );
$role_object->add_cap( 'manage_options' );
travaille pour moi (en 2014)
N'ont-ils pas besoin de la fonctionnalité "edit_themes"? Vous pouvez utiliser le plugin Justin Tadlocks http://wordpress.org/extend/plugins/members/ pour modifier les fonctionnalités associées à chaque rôle.
Un autre excellent plugin est User Role Editor (http://wordpress.org/extend/plugins/user-role-editor/). Il ressemble aux membres, mais il est beaucoup plus simple et simple à utiliser. De plus, les développeurs sont toujours là pour écouter les commentaires et offrir de l'aide, si nécessaire.
C’est vieux, mais voici une nouvelle façon d’y parvenir:
add_filter( 'user_has_cap',
function( $caps ) {
if ( ! empty( $caps['edit_pages'] ) )
$caps['edit_theme_options'] = true;
return $caps;
} );