Changer le rôle minimum pour utiliser SecuPress
Pour utiliser SecuPress il faut être Administrateur du site (rôle utilisateur administrator
).
En multi-site il y a deux situations :
- Il faut être Administrateur du réseau pour avoir accès à toute l’interface de SecuPress : la page des scanners, des modules, des réglages, ou des journaux.
- Parfois SecuPress doit s’adresser aux Administrateurs de chaque site, en leur affichant une notice et/ou leur donnant accès à une page dédiée. Dans ce cas c’est la même chose que pour un mono-site, il faut avoir le rôle utilisateur
administrator
.
Le cas « Administrateur du réseau » ne peut pas être modifié.
En revanche le rôle utilisateur administrator
peut l’être, pour donner aux Éditeurs l’accès à l’interface de SecuPress par exemple, ou à un rôle personnalisé créé dans ce but.
Pour cela nous allons créer une extension « Must Use ».
- Voir le tutoriel Comment créer un MU Plugin et créer un fichier
secupress-custom-role.php
puis nommer ce MU plugin « SecuPress custom role » par exemple. - En ajoutant le code nécessaire, il ressemblera à ceci :
<?php /** * Plugin Name: SecuPress custom role * Version: 1.0 */ defined( 'ABSPATH' ) or die( 'Cheatin\' uh?' ); add_filter( 'secupress.user_capability', 'my_custom_role' ); /** * Filter the user capability/role that gives access to SecuPress features. * * @since 1.0 */ function my_custom_role() { return 'edit_others_posts'; }
edit_others_posts
correspond aux rôles Éditeur et Administrateur. Vous pouvez trouver les correspondances capacité <=> rôle dans Roles and Capabilities [en]. Vous pouvez remplacer ceedit_others_posts
par un rôle personnalisé, mais attention, cela ne ciblera QUE ce rôle.- Placer le tout dans le dossier
/wp-content/mu-plugins/