Si su blog tiene un área restringida que no desea publicar para todos los visitantes, solo para miembros, entonces es posible que desee obligar a los usuarios a iniciar sesión antes de leer estos mensajes . Afortunadamente, WordPress tiene una función incorporada que puede ayudarnos a hacer eso.
La función es auth_redirect (), así es como funciona: cuando se llama desde una página, se comprueba para ver si el usuario que está viendo la página ha iniciado sesión. Si el usuario no está conectado, son redirigido a la página de inicio de sesión . El usuario se redirige de tal manera que, al iniciar sesión, estarán enviado directamente a la página a la que originalmente intentaban acceder .
Al usar esta función, podemos implementar nuestro código que verifica si la publicación está restringida o no, y redirigir a los usuarios a la página de inicio de sesión si es necesario.
Simplemente pegue el siguiente código en su tema functions.php archivo:
function my_force_login () { global $ post; if (! is_single ()) return; $ ids = array (188, 185, 171); // conjunto de ID de publicación que fuerzan el inicio de sesión para leer if (in_array ((int) $ post-> ID, $ ids) &&! is_user_logged_in ()) { auth_redirect (); } }
Cambie la matriz de ID de publicación para que se ajuste a sus necesidades. Después de eso, abre el header.php
archiva y coloca el siguiente código en la parte superior:
El código es simple, pero puedes Expandelo con más opciones como: requiere iniciar sesión en algunas categorías específicas, crear una página de opciones para facilitar el ingreso de ID de entrada, etc.
La función auth_redirect () está disponible desde WordPress 1.5.