Capabilities & Roles

WordPress 🟡 Mid

Definition

Systeme de permissions WordPress ou les roles (admin, editor, author) regroupent des capabilities (edit_posts, manage_options). Controle l'acces aux fonctionnalites.

Analogie

Comme les badges d'acces dans une entreprise : le directeur ouvre toutes les portes, le stagiaire quelques-unes.

Exemple de code

// Verifier une capability
if (!current_user_can('edit_posts')) {
  wp_die('Acces interdit');
}

// Ajouter un role custom
add_role('moderator', 'Moderateur', [
  'read' => true, 'edit_posts' => true,
]);

Cas d'usage

Pour controler finement qui peut faire quoi dans l'admin et via l'API REST.

Anti-pattern

Verifier is_admin() au lieu de current_user_can() pour proteger les actions.

Termes lies

#core#interview#security#wordpress