web-dev-qa-db-fra.com

Impossible de modifier les détails du média dans le nouveau rôle

J'ai créé un nouveau rôle d'utilisateur appelé "writer" et lui ai attribué les fonctionnalités suivantes.

read, 
edit_post ,
upload_files, 
edit_posts, 
edit_published_posts,
publish_posts,
level_0,
level_1,
level_2`

L'utilisateur peut télécharger des images mais ne peut pas éditer les détails du média comme le titre, la légende, etc. non editable media file details

Les zones de texte sont en lecture seule. Me manque-t-il une autorisation dans le rôle d'utilisateur?

Edit: le code pour le rôle est:

add_role( 'writer', 'Writer', array(
    'read'=>true,
    'edit_post'=>true,
    'upload_files'=>true,
    'edit_posts'=>true,
    'edit_published_posts'=> true,
    'publish_posts'=>true,
    'level_0'=>true,
    'level_1'=>true,
    'level_2'=>true
    )
 );

Edit: trouvé. En quelque sorte, l’ajout de la fonctionnalité "edit_others_posts" a résolu le problème.

1
Prasun Jajodia

Comme mentionné dans mes commentaires, sous le code tel qu'il devrait être imho. (testé et fonctionnel)

/**
 * Add new role: Writer
 * This role allows to: Add/Edit/Delete Posts and Uploads
 *
 * Read more: {@link https://codex.wordpress.org/Roles_and_Capabilities}
 *
 * Works with @version WP4.8.1 and below
 */
add_role( 'writer', 'Writer', 
    array( 
        'delete_posts'           => true,
        'delete_published_posts' => true,
        'edit_posts'             => true,
        'edit_published_posts'   => true,
        'publish_posts'          => true,
        'read'                   => true,
        'upload_files'           => true, 
        )
    );

Ajoutez le code dans functions.php et supprimez-le après l'avoir ajouté/visible dans le back-end (panneau d'administration), car il sera ajouté à votre base de données. Sinon WP essaiera d’ajouter le rôle (bien que ce soit déjà fait) tous les visite de chaque utilisateur tout le temps. (Inutile et une mauvaise habitude dans ce cas)

Notez que s'il vous plaît lisez le Codex afin que vous compreniez ce que j'ai essayé d'expliquer.
Ajustez (supprimez le code inutile) selon vos préférences.

1
Charles