Bloquer l’accès au back-office de WordPress pour un rôle utilisateur

Source : https://wpchannel.com/wordpress/tutoriels-wordpress/bloquer-acces-utilisateurs-wordpress/

Vous disposez de comptes utilisateurs mais vous ne souhaitez pas que ces derniers accèdent aux back-office de WordPress ? Le recours à ces quelques lignes de code vous permettra d’exclure les utilisateurs avec le rôle d’abonné de votre administration.

De nombreux sites WordPress autorisent l’enregistrement de comptes utilisateurs avec des usages exclusivement limités au front-office : espace client, zone réservée aux membres, forum… les cas sont multiples et variés pour justifier un tel blocage du back-office.

L’exemple ci-dessous exclut les abonnés mais à vous de l’adapter selon vos besoins :

/* Bloquer accès aux non-admins */
function wpc_block_dashboard() {
	$file = basename($_SERVER['PHP_SELF']);
	if (is_user_logged_in() && is_admin() && !current_user_can('edit_posts') && $file != 'admin-ajax.php') {
		wp_redirect( home_url() );
		exit();
	}
}
add_action('init', 'wpc_block_dashboard');

Vous pouvez modifier la capacité en changeant edit_posts par celle de votre choix conformément au codex.

%d blogueurs aiment cette page :