Underc0de - La Casa de los Informáticos

Foros Generales => Dudas y pedidos generales => Mensaje iniciado por: gontzal240 en Junio 28, 2017, 07:37:08 PM

Título: Ayuda con gestión de sesiones y redirecciones WordPress
Publicado por: gontzal240 en Junio 28, 2017, 07:37:08 PM
Hola, soy novato en esto y llevo bastantes horas dándole vueltas, el caso es que llevo bastante rato y no consigo dar con la solución, lo que quiero hacer es, cuando un usuario no esté logueado en mi web WordPress y navegue por la web, le redireccione siempre al index (www.dominio.com) tal cual, antes de ver cualquier contenido, sólo podrá ver el index (ahí hay un login), y si se logea, pueda navegar y ver el resto de la web.

He estado jugando con la función is_user_logged_in() pero lo único que he conseguido es que se redireccione, pero se crea un bucle en el index ya que redirecciona también el propio index a él mismo.

Esto es lo que he podido hacer, el caso es que sigue el bucle:

Código (php) [Seleccionar]
if(!is_user_logged_in() && get_site_url() != 'http://dominio.com/index.php') {
    wp_redirect( 'http://dominio.com', 302 );
    exit;
}
Título: Re:Ayuda con gestión de sesiones y redirecciones WordPress
Publicado por: ZanGetsu en Junio 28, 2017, 08:33:21 PM
el get_site_url(), te trae el path completo?? o solo la Url base? (es decir con index.php)
Título: Re:Ayuda con gestión de sesiones y redirecciones WordPress
Publicado por: rush en Junio 28, 2017, 09:07:01 PM
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
el get_site_url(), te trae el path completo?? o solo la Url base? (es decir con index.php)

Por lo que veo solo trae URL BASE

https://developer.wordpress.org/reference/functions/get_site_url/


Código (php) [Seleccionar]
<?php echo get_site_url(); ?>
Results in the full site URL being displayed:

http://www.example.com


Supongo que es por esto que no esta funcionando
Título: Re:Ayuda con gestión de sesiones y redirecciones WordPress
Publicado por: gontzal240 en Junio 28, 2017, 09:10:41 PM
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
el get_site_url(), te trae el path completo?? o solo la Url base? (es decir con index.php)

Por lo que veo solo trae URL BASE

https://developer.wordpress.org/reference/functions/get_site_url/


Código (php) [Seleccionar]
<?php echo get_site_url(); ?>
Results in the full site URL being displayed:

http://www.example.com


Supongo que es por esto que no esta funcionando

Entiendo, y cómo podría hacerlo?, he intentado con una variable y añadiendo el index.php al get_home_url, pero estamos en las mismas.
Título: Re:Ayuda con gestión de sesiones y redirecciones WordPress
Publicado por: ZanGetsu en Junio 28, 2017, 09:44:58 PM
no tengo wordpress a mano, pero podrías probar con get_permalink(); ??

o bien podrias traerlo con php, $_server['SERVER_NAME'].$_server['REQUEST_URI'];
Título: Re:Ayuda con gestión de sesiones y redirecciones WordPress
Publicado por: gontzal240 en Junio 29, 2017, 10:04:53 AM
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
no tengo wordpress a mano, pero podrías probar con get_permalink(); ??

o bien podrias traerlo con php, $_server['SERVER_NAME'].$_server['REQUEST_URI'];

Como podría integrar $_server['SERVER_NAME'].$_server['REQUEST_URI'] ¿?, gracias por la ayuda, apenas se nada.
Título: Re:Ayuda con gestión de sesiones y redirecciones WordPress
Publicado por: rush en Junio 29, 2017, 12:09:50 PM
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
no tengo wordpress a mano, pero podrías probar con get_permalink(); ??

o bien podrias traerlo con php, $_server['SERVER_NAME'].$_server['REQUEST_URI'];

Lo que comenta, puedes encontrar una mejor descripción acá LINK (https://cybmeta.com/como-obtener-la-url-actual-en-php)

Puedes utilizar una variable como esta $url = $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]

para que te devuelva la PATH, son ejecutadas en PHP, por lo tanto puedes incluirla antes del IF
Título: Re:Ayuda con gestión de sesiones y redirecciones WordPress
Publicado por: ZanGetsu en Junio 29, 2017, 12:32:56 PM
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
no tengo wordpress a mano, pero podrías probar con get_permalink(); ??

o bien podrias traerlo con php, $_server['SERVER_NAME'].$_server['REQUEST_URI'];

Como podría integrar $_server['SERVER_NAME'].$_server['REQUEST_URI'] ¿?, gracias por la ayuda, apenas se nada.

Bueno como lo menciona rush, debería quedarte así: $url = 'http://'.$_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"];

Por cierto, no te funcionó el get_permalink(); ??
Título: Re:Ayuda con gestión de sesiones y redirecciones WordPress
Publicado por: HATI en Junio 29, 2017, 01:05:46 PM
A ver si esto te ayuda:


http://www.wpbeginner.com/beginners-guide/how-to-make-your-wordpress-blog-completely-private/ (http://www.wpbeginner.com/beginners-guide/how-to-make-your-wordpress-blog-completely-private/)

http://www.esandra.com/como-hacer-wordpress-privado-con-y-sin-plugins/ (http://www.esandra.com/como-hacer-wordpress-privado-con-y-sin-plugins/)