Wordpress Rewrite

2

Estoy intentando que enlace se vuelva a escribir en enlace pero por mi vida no puedo descubrir cómo hacer que la URL se vuelva a escribir.

/ site / es el directorio raíz de mi instalación de WP / vendedores / es una página

    
pregunta Austin Biggs 03.07.2013 - 17:13

2 respuestas

3

asumiendo que u es una var de consulta personalizada, primero debe agregarla a la matriz de vars de consulta reconocidos:

function wpa_query_vars( $query_vars ){
    $query_vars[] = 'u';
    return $query_vars;
}
add_filter('query_vars', 'wpa_query_vars');

Luego, agregue una regla de reescritura interna que acepte cualquier cosa anexada a vendors y la pase como u query var:

function wpa_rewrite(){
    add_rewrite_rule(
        'vendors/([^/]+)/?$',
        'index.php?pagename=vendors&u=$matches[1]',
        'top'
    );
}
add_action( 'init', 'wpa_rewrite' );

Asegúrese de vaciar las reglas de reescritura para que se agregue esta regla, también puede hacerlo simplemente visitando el Settings > Permalinks admin page.

Luego, en la plantilla, puedes acceder al valor de u a través de get_query_var() :

$vendor = get_query_var( 'u' );
    
respondido por el Milo 03.07.2013 - 20:23
1

Creo que esto es lo que estás buscando:

RewriteRule ^/site/vendors/([^/]*)$ /site/vendors/?u=$1 [L]
    
respondido por el David Kryzaniak 03.07.2013 - 19:05

Lea otras preguntas en las etiquetas