web-dev-qa-db-fra.com

Un utilisateur ayant le rôle d'administrateur peut-il recevoir l'erreur "Désolé, vous n'êtes pas autorisé à déplacer cet élément vers la corbeille" lors de la suppression d'une publication?

J'ai reçu le message d'erreur wp_die:

Désolé, vous n'êtes pas autorisé à déplacer cet élément dans la corbeille.

en essayant de mettre le message à la corbeille, mais quand j'ai essayé de le mettre à nouveau dans la corbeille, le message d'erreur wp_die:

Erreur lors du déplacement dans la corbeille.

est arrivé et lors de l'actualisation, je vois que le message a été supprimé. J'ai le rôle d'administrateur, donc j'ai la capacité delete_post. Selon l'extrait de code dans wp-admin/edit.php, le rôle avec admin ne devrait pas avoir ces erreurs.

foreach ( (array) $post_ids as $post_id ) {
    if ( !current_user_can( 'delete_post', $post_id) )
        wp_die( __('Sorry, you are not allowed to move this item to the Trash.') );

    if ( wp_check_post_lock( $post_id ) ) {
        $locked++;
        continue;
    }

    if ( !wp_trash_post($post_id) )
        wp_die( __('Error in moving to Trash.') );

    $trashed++;
}
3
IAmDhar

Lorsque vous utilisez map_meta_cap avec un type de publication personnalisé (par exemple, CPT book), la fonctionnalité delete_book n'est pas ajoutée automatiquement aux administrateurs.

alors vous devez utiliser add_cap pour l'ajouter

https://codex.wordpress.org/Function_Reference/add_cap

2
mmm