web-dev-qa-db-fra.com

Comment donner la capacité (publier des posts de contributeurs) au rôle d'auteur?

Je ne suis pas un programmeur PHP, mais un simple utilisateur de WordPress.

  • Comment puis-je autoriser le rôle d'auteur à autoriser la publication de messages de contributeurs?
  • Quel est le nom technique pour cela?
1
AmirRH

Je pense que la meilleure approche consiste à ajouter la capacité edit_other_posts au rôle "auteur" dans l'activation du plugin/thème et à supprimer cette capacité lors de la désactivation du plugin/thème. Avec cette méthode, vous n'exécutez la tâche qu'une seule fois et vous n'avez pas besoin de codage supplémentaire.

Utilisation de l'activation/désactivation du plugin:

register_activation_hook( __FILE__, 'cyb_activation_function' );
function cyb_activation_function() {

    $author = get_role( 'author' );
    $author->add_cap( 'edit_others_posts' ); 

}

register_deactivation_hook( __FILE__, 'cyb_deactivation_function');
function cyb_deactivation_function() {

    $author = get_role( 'author' );
    $author->remove_cap( 'edit_others_posts' ); 

}

Utilisation de l'activation/désactivation du thème:

add_action('after_switch_theme', 'cyb_activation_function');
function cyb_activation_function() {

    $author = get_role( 'author' );
    $author->add_cap( 'edit_others_posts' ); 

}

add_action('switch_theme', 'cyb_deactivation_function');
function cyb_deactivation_function() {

    $author = get_role( 'author' );
    $author->remove_cap( 'edit_others_posts' ); 

}
1
cybmeta

Évidemment, les capacités d’un rôle peuvent être modifiées par programme, mais étant donné que vous êtes

pas un PHP programmeur, juste un simple utilisateur de WordPress

vous devrez utiliser un plugin permettant de modifier les rôles des utilisateurs.
Il y en a beaucoup, mais ma recommandation personnelle serait le plugin Members de Justin Tadlock.

Quel est le nom technique pour cela?

Chaque rôle est doté d'un ensemble de capacités .
Ce sont les termes que vous recherchiez.

Comment puis-je autoriser le rôle d'auteur à autoriser la publication de messages de contributeurs?

La capacité dont vous avez besoin ici est edit_others_posts .

0
Johannes Pille