Saltar al contenido

Wordpress – ¿Cómo crear rutas URL personalizadas?

Solución:

Agregue esto al functions.php de su tema, o póngalo en un complemento.

add_action( 'init', 'wpse26388_rewrites_init' );
function wpse26388_rewrites_init(){
    add_rewrite_rule(
        'properties/([0-9]+)/?$',
        'index.php?pagename=properties&property_id=$matches[1]',
        'top' );
}

add_filter( 'query_vars', 'wpse26388_query_vars' );
function wpse26388_query_vars( $query_vars ){
    $query_vars[] = 'property_id';
    return $query_vars;
}

Esto agrega una regla de reescritura que dirige las solicitudes a /properties/ con cualquier combinación de números que siguen al nombre de la página properties, con la consulta var property_id colocar. Solo asegúrese de visitar la página de configuración de enlaces permanentes y guardar para eliminar las reglas de reescritura, para que se incluya esta nueva regla.

En tus page-properties.php plantilla, get_query_var('property_id') devolverá el ID de propiedad si se estableció, si no lo está, mostrará la página de propiedades predeterminada.

Otra forma de hacerlo:

add_action('init', function() {
    add_rewrite_rule( '^properties/([0-9]+)/?',
                      'index.php?pagename=properties&property_id=$matches[1]',
                      'top' );
}, 10, 0);

add_action('init', function() {
    add_rewrite_tag( '%property_id%', '([^&]+)' );
}, 10, 0);

Codex Rewrite API / agregar regla de reescritura

Codex Rewrite API / agregar etiqueta de reescritura

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *