Autoriser le téléchargement des médias pour les contributeurs

Dans WordPress, un contributeur peut uniquement ajouter, éditer et supprimer ses propres articles qui seront soumis à la validation d’un administrateur ou d’un éditeur. De plus, il lui est impossible de télécharger des médias.

Ceci peut-être un détail génant puisque vos contributeurs ne pourront pas fournir des articles composés d’images alors que ces derniers apportent en général une plus-value non négligeable à ceux-ci.

WordPress étant très bien pensé;  il est possible de modifier les droits d’un rôle.

L’astuce ci-dessous se place dans le fichier functions.php présent à la racine de votre thème (ou de votre thème enfant)

if ( current_user_can('contributor') && !current_user_can('upload_files') )
    add_action('admin_init', 'allow_upload_contributors');
 
function allow_upload_contributors() {
    $contributor = get_role('contributor');
    $contributor->add_cap('upload_files');
}

Avant d’exécuter la fonction qui ajoutera la capacité de téléchargement, il convient de vérifier si le membre a le rôle de contributeur et s’il n’a pas le droit de télécharger des médias. Une fois la vérification effectuée, il faut ajouter la capacité à l’ensemble des contributeurs.

Grâce à cette astuce, le menu Envoyer/Insérer apparaît pour tous vos contributeurs.