Restaurer les rôles et permissions par défaut sur WordPress

Dans le cadre de projets WordPress, il est courant de jouer avec les rôles utilisateurs et leurs permissions, pour customiser l’admin pour les différents types d’utilisateurs qui seront amenés à l’utiliser.

On joue avec les fonctions remove_role, add_role, et parfois on a de mauvaises surprises, comme un « Vous n’avez pas les droits suffisants pour accéder à cette page. » quand on veut accéder au wp-admin avec un des nouveaux rôles que l’on a créé.
On décide alors de recopier le nouveau rôle à partir d’un des rôles par défaut de WordPress, quand on se rend compte que l’on ne peut pas le faire car on a supprimé les rôles par défaut avec remove_role sans savoir que cette suppression était irrémédiable !

Heureusement, il est assez simple de réinitialiser tout ça pour repartir avec tous les roles par défaut et à nouveau pouvoir les utiliser comme modèle !

Pour cela, il faut agir directement en base de données, dans la table wp_options, en éditant la ligne qui a pour option_name : « wp_user_roles »

La option_value à assigner à cette ligne est la suivante :

a:5:{s:13:"administrator";a:2:{s:4:"name";s:13:"Administrator";s:12:"capabilities";a:62:{s:13:"switch_themes";b:1;s:11:"edit_themes";b:1;s:16:"activate_plugins";b:1;s:12:"edit_plugins";b:1;s:10:"edit_users";b:1;s:10:"edit_files";b:1;s:14:"manage_options";b:1;s:17:"moderate_comments";b:1;s:17:"manage_categories";b:1;s:12:"manage_links";b:1;s:12:"upload_files";b:1;s:6:"import";b:1;s:15:"unfiltered_html";b:1;s:10:"edit_posts";b:1;s:17:"edit_others_posts";b:1;s:20:"edit_published_posts";b:1;s:13:"publish_posts";b:1;s:10:"edit_pages";b:1;s:4:"read";b:1;s:8:"level_10";b:1;s:7:"level_9";b:1;s:7:"level_8";b:1;s:7:"level_7";b:1;s:7:"level_6";b:1;s:7:"level_5";b:1;s:7:"level_4";b:1;s:7:"level_3";b:1;s:7:"level_2";b:1;s:7:"level_1";b:1;s:7:"level_0";b:1;s:17:"edit_others_pages";b:1;s:20:"edit_published_pages";b:1;s:13:"publish_pages";b:1;s:12:"delete_pages";b:1;s:19:"delete_others_pages";b:1;s:22:"delete_published_pages";b:1;s:12:"delete_posts";b:1;s:19:"delete_others_posts";b:1;s:22:"delete_published_posts";b:1;s:20:"delete_private_posts";b:1;s:18:"edit_private_posts";b:1;s:18:"read_private_posts";b:1;s:20:"delete_private_pages";b:1;s:18:"edit_private_pages";b:1;s:18:"read_private_pages";b:1;s:12:"delete_users";b:1;s:12:"create_users";b:1;s:17:"unfiltered_upload";b:1;s:14:"edit_dashboard";b:1;s:14:"update_plugins";b:1;s:14:"delete_plugins";b:1;s:15:"install_plugins";b:1;s:13:"update_themes";b:1;s:14:"install_themes";b:1;s:11:"update_core";b:1;s:10:"list_users";b:1;s:12:"remove_users";b:1;s:9:"add_users";b:1;s:13:"promote_users";b:1;s:18:"edit_theme_options";b:1;s:13:"delete_themes";b:1;s:6:"export";b:1;}}s:6:"editor";a:2:{s:4:"name";s:6:"Editor";s:12:"capabilities";a:34:{s:17:"moderate_comments";b:1;s:17:"manage_categories";b:1;s:12:"manage_links";b:1;s:12:"upload_files";b:1;s:15:"unfiltered_html";b:1;s:10:"edit_posts";b:1;s:17:"edit_others_posts";b:1;s:20:"edit_published_posts";b:1;s:13:"publish_posts";b:1;s:10:"edit_pages";b:1;s:4:"read";b:1;s:7:"level_7";b:1;s:7:"level_6";b:1;s:7:"level_5";b:1;s:7:"level_4";b:1;s:7:"level_3";b:1;s:7:"level_2";b:1;s:7:"level_1";b:1;s:7:"level_0";b:1;s:17:"edit_others_pages";b:1;s:20:"edit_published_pages";b:1;s:13:"publish_pages";b:1;s:12:"delete_pages";b:1;s:19:"delete_others_pages";b:1;s:22:"delete_published_pages";b:1;s:12:"delete_posts";b:1;s:19:"delete_others_posts";b:1;s:22:"delete_published_posts";b:1;s:20:"delete_private_posts";b:1;s:18:"edit_private_posts";b:1;s:18:"read_private_posts";b:1;s:20:"delete_private_pages";b:1;s:18:"edit_private_pages";b:1;s:18:"read_private_pages";b:1;}}s:6:"author";a:2:{s:4:"name";s:6:"Author";s:12:"capabilities";a:10:{s:12:"upload_files";b:1;s:10:"edit_posts";b:1;s:20:"edit_published_posts";b:1;s:13:"publish_posts";b:1;s:4:"read";b:1;s:7:"level_2";b:1;s:7:"level_1";b:1;s:7:"level_0";b:1;s:12:"delete_posts";b:1;s:22:"delete_published_posts";b:1;}}s:11:"contributor";a:2:{s:4:"name";s:11:"Contributor";s:12:"capabilities";a:5:{s:10:"edit_posts";b:1;s:4:"read";b:1;s:7:"level_1";b:1;s:7:"level_0";b:1;s:12:"delete_posts";b:1;}}s:10:"subscriber";a:2:{s:4:"name";s:10:"Subscriber";s:12:"capabilities";a:2:{s:4:"read";b:1;s:7:"level_0";b:1;}}}

C’est tout bête mais c’est pratique d’avoir cela sous la main, ça peut éviter d’avoir à faire une nouvelle installation de WordPress juste pour pouvoir retrouver cette valeur 🙂

5 novembre 2014|Categories: Blog|Tags: |7 Commentaires

RivieraSwing

rivieraswingSite de gestion de droits de jeu de Golf.

  • Développement spécifiques sous forme de module WordPress : gestion des clients, des golfs, des plannings. Espace client avec gestion des slots de jeu (libération, extra slots, etc.).
  • Refonte du site sous WordPress
  • Reprise et refonte du design de la version précédente
  • Responsive design (avec Twitter Bootstrap)

www.rivieraswing.com

3 juin 2014|Categories: Références|Tags: , , , , , , |Commentaires fermés sur RivieraSwing

AMC2 Ecole de musique Caluire et Cuire

amc2Site institutionnel d’une école de musique.

  • Refonte du site sous WordPress
  • Reprise et refonte du design de la version précédente
  • Responsive design (avec Twitter Bootstrap)

www.musicamc2.fr

28 mai 2014|Categories: Références|Tags: , , , , , |Commentaires fermés sur AMC2 Ecole de musique Caluire et Cuire

Apikod

apikodSite Web d’applications mobiles d’aide à la conduite.

  • Développement et intégration
  • Responsive design (avec Twitter Bootstrap)
  • Multilingue
  • CMS : WordPress
  • Interfaces de synchronisations de données avec les applications mobiles
  • Google Charts API
  • Administration serveur dédié Linux Debian

www.camelys.apikod.com

6 février 2014|Categories: Références|Tags: , , , , , , , , |Commentaires fermés sur Apikod

URML Basse Normandie

urmlSite institutionnel de l’Union Régionale des Médecins Libéraux de Basse Normandie.

  • Développement et intégration
  • Responsive design évolué gérant 6 designs différents selon la résolution de la vue de navigation
  • CMS : WordPress
  • En collaboration avec l’agence Idmagine

www.urml-bn.org

13 décembre 2013|Categories: Références|Tags: , , , , |Commentaires fermés sur URML Basse Normandie

TVES – Technique Vide Emballage Services

tves_technique_vide_emballage_servicesEntreprise de services spécialisée dans la maintenance, la remise en état et la vente de machine d’emballage et de tranchage pour l’industrie agro-alimentaire et médicale.

  • Développement et intégration
  • Responsive design basé sur le framework Twitter Bootsrap
  • CMS : WordPress

TVES – Technique Vide Emballage Services

4 septembre 2013|Categories: Références|Tags: , , , , |Commentaires fermés sur TVES – Technique Vide Emballage Services

Gallica – Bibliothèque nationale de France

gallicaDéveloppement du journal électronique de Gallica « e-journal ».

  • Responsive design
  • Génération automatique d’une version mailing
  • CMS : WordPress (V1) et Drupal (V2)
  • En collaboration avec l’agence BLC Consultants
4 septembre 2013|Categories: Références|Tags: , , , |Commentaires fermés sur Gallica – Bibliothèque nationale de France