¿Estás buscando una forma de restringir el acceso al panel a los usuarios? Si bien probablemente haya un plugin para esto, hemos creado un fragmento de código rápido que puedes usar para restringir el acceso al panel a los usuarios en WordPress.
Instrucciones:
Todo lo que tienes que hacer es agregar este código al archivo functions.php de tu tema o a un plugin específico del sitio:
function baw_no_admin_access()
{
if( !current_user_can( 'administrator' ) && stristr( $_SERVER['REQUEST_URI'], '/wp-admin' ) !== false ) {
wp_redirect( home_url() );
die();
}
}
add_action( 'init', 'baw_no_admin_access', 1 );
Este código restringirá a cualquier usuario, excepto al administrador, el acceso a tu panel de WordPress.
Nota: Si es la primera vez que agregas fragmentos de código en WordPress, consulta nuestra guía sobre cómo agregar fragmentos de código correctamente en WordPress, para que no rompas accidentalmente tu sitio.
Si te gustó este fragmento de código, considera revisar nuestros otros artículos en el sitio como: 20 mejores temas de WordPress para iglesias para expandir la congregación y cómo usar Google Optimize en WordPress.
function baw_no_admin_access()
{
if( !current_user_can( ‘administrator’) && stristr( $_SERVER[‘REQUEST_URI’], ‘/wp-admin’ ) !== false ) {
wp_redirect( home_url() );
die();
}
add_action( ‘init’, ‘baw_no_admin_access’, 1 );
En este código, ¿cómo puedo agregar otro usuario además del administrador?
Les agradezco de antemano, estimados usuarios.
Esto también evita que mis usuarios cierren sesión. Siguen siendo redirigidos a la página de inicio y no pueden cerrar sesión.
¿Esto todavía funciona para WordPress 5.4?
Debería seguir funcionando. ¿Estás recibiendo mensajes de error?
con esta función también bloqueas las solicitudes ajax. Mejor agregar
&& !( defined( ‘DOING_AJAX’ ) && DOING_AJAX )
Quizás entendí mal el comentario, pero normalmente no querrías que AJAX en el administrador funcione si el usuario no ha iniciado sesión y si lo estás bloqueando del área de administración.