Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » WordPress »

plugin redirect que solo funciona estando logeado

Estas en el tema de plugin redirect que solo funciona estando logeado en el foro de WordPress en Foros del Web. Buenas, hace poco monté un blog en el que he añadido un plugin para hacer una redireccion al acceder a un tipo de contenido en ...
  #1 (permalink)  
Antiguo 16/12/2013, 13:47
 
Fecha de Ingreso: junio-2007
Ubicación: Cádiz
Mensajes: 369
Antigüedad: 16 años, 9 meses
Puntos: 7
plugin redirect que solo funciona estando logeado

Buenas, hace poco monté un blog en el que he añadido un plugin para hacer una redireccion al acceder a un tipo de contenido en concreto a través de un custom field "redirect" en el que agrego la url a la que hay hacer la redirección, el caso es que estando logeado funciona sin problemas pero cuando me deslogeo deja de funcionar.

EL plugin en si es muy sencillo, os lo paso a ver si podéis decirme a qué se debe el fallo... GRacias de antemano ;)

Código PHP:
    require_once($_SERVER['DOCUMENT_ROOT'] . '/wp-config.php');
    
add_action('get_header''redirect');

    function 
redirect () {
        global 
$post;
        if (
is_page() || is_object($post)) {
            if (
get_post_meta($post->ID'redirect'true)) {
                
header('Location: ' get_post_meta($post->ID'redirect'true));
            }
        }
    } 
  #2 (permalink)  
Antiguo 16/12/2013, 14:42
Avatar de AlejandroGalvez  
Fecha de Ingreso: noviembre-2013
Mensajes: 189
Antigüedad: 10 años, 4 meses
Puntos: 49
Respuesta: plugin redirect que solo funciona estando logeado

El código es algo raro. Ese require_once a wp-config.php no termino de comprenderlo. Intenta algo más estándar y correcto:

Código PHP:
//Utilizar este hook es recomendado pues es el más rápido para tu objetivo                  
add_action'wp''redirect' ); 

function 
redirect() { 
    
    
// is_singular() Comprueba si es página o cualquier tipo de post (estandar, attachment...)
    
if ( is_singular() ) { 

        if ( 
get_post_metaget_the_ID(), 'redirect'true ) ) { 
            
            
//utiliza wp_redirect para redireccionar de una forma segura desde WordPress
            
wp_redirectget_post_metaget_the_ID(), 'redirect'true) ); 
            
        } 
        
    } 
    

Este código funciona tanto logueado como deslogueado, pruébalo.

Última edición por AlejandroGalvez; 16/12/2013 a las 14:51
  #3 (permalink)  
Antiguo 16/12/2013, 15:06
 
Fecha de Ingreso: junio-2007
Ubicación: Cádiz
Mensajes: 369
Antigüedad: 16 años, 9 meses
Puntos: 7
Respuesta: plugin redirect que solo funciona estando logeado

Gracias por tu respuesta ;)

Pues lo cierto es que lo he probado y me ocurre lo mismo... Logeado hace la redirección pero deslogeado no...

No lo entiendo... No creo que tenga que ver con el theme, puede ser por donde estoy incluyendo el código porque es en el mismo archivo que añadía el plugin... Te paso la url, cada item lleva asociado un campo redirect en el que incluyo la url de la redirección... http://goo.gl/oM0yzC

Saludos!!
  #4 (permalink)  
Antiguo 16/12/2013, 15:47
Avatar de AlejandroGalvez  
Fecha de Ingreso: noviembre-2013
Mensajes: 189
Antigüedad: 10 años, 4 meses
Puntos: 49
Respuesta: plugin redirect que solo funciona estando logeado

Puede que tenga que ver lo que comentas. Trata de ponerlo en el archivo functions.php de tu tema y ver si funciona correctamente. Ya te digo que lo he testeado y funciona tanto logueado como deslogueado.
  #5 (permalink)  
Antiguo 17/12/2013, 12:48
 
Fecha de Ingreso: junio-2007
Ubicación: Cádiz
Mensajes: 369
Antigüedad: 16 años, 9 meses
Puntos: 7
Respuesta: plugin redirect que solo funciona estando logeado

Pues sigue sin funcionarme... :{

Lo he puesto en functions.php al comienzo del fichero, bajo estas lineas...

Código PHP:
<?php
    
require_once TEMPLATEPATH '/lib/Themater.php';
    
$theme = new Themater('MovieSpot');
    
$theme->options['includes'] = array('featuredposts');
    
    
$theme->options['plugins_options']['featuredposts'] = array('hook' => 'main_before''image_sizes' => '930px. x 300px.''speed' => '400''effect' => 'scrollHorz');

    if(
$theme->is_admin_user()) {
        unset(
$theme->admin_options['Ads']);
    }
Y nada... funciona cuando estoy logeado pero no así si me deslogeo... Que extraño... :{

¿Alguna idea?

Etiquetas: blog, php, plugin, post, redirect, tema
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:28.