• Resuelto vzk91

    (@vzk91)


    Hola,

    Vereis llevo varios dias intentando pasar una variable por URL a una de las paginas de mi wordpress. La url normal seria:

    http://www.miweb.com/pagina1/index.php?pagename=pagina1&var1=variable1&var2=variable2

    Pero yo necesito que funcionen los permalinks, y la url quede asi:

    http://www.miweb.com/pagina1/variable1/variable2

    Lo he intentado de esta manera pero no funciona. Añado el siguiente codigo en el archivo fuctions.php de mi theme activo:

    add_filter('generate_rewrite_rules','filtro_rewrite_rules');
    add_filter('query_vars', 'filtro_query_vars');
    
    function filtro_rewrite_rules($wp_rewrite) {
    
        $competicion = array('pagina1/([0-9]*)/(.*)/?$' => 'index.php?pagename=pagina1&var1='.$wp_rewrite->preg_index(1).'&var2='.$wp_rewrite->preg_index(2));
        $wp_rewrite->rules = array_merge($competicion,$wp_rewrite->rules);
    
    }
    
    function filtro_query_vars($public_query_vars) {
        if(!in_array("var1",$public_query_vars)) {
            $public_query_vars[] = 'var1';
            $public_query_vars[] = 'var2';
        }
        return $public_query_vars;
    }

    pero no funciona, alguien sabe que ocurre ?? llevo varios dias atascado en esto….

Viendo 1 respuesta (de un total de 1)
  • es más fácil si el parseo de la url lo haces con directivas de apache y tu función procesa las variables que pases de la url a la query string

Viendo 1 respuesta (de un total de 1)
  • El debate ‘Pasar variables por url con permalinks’ está cerrado a nuevas respuestas.