Ahora paso parámetros a una plantilla personalizada en el siguiente formato
www.example.com/?pageid=12&rid=24&title=this-is-the-title
He creado dos tablas. Entonces necesito obtener datos y mostrarlos en esas páginas.
Me gustaría que usara un formato URL limpio como:
www.example.com/pageid/12/rid/24/title/this-is-the-title
¿Alguien puede decir cómo se puede lograr esto?
Gracias
url-rewriting
templates
page-template
htaccess
usuario7282
fuente
fuente
Respuestas:
add_rewrite_rule()
le permite convertir la bonita URL en variables.(\d*)
/rid/
o/pageid/
([a-zA-Z0-9-]+
Aquí hay una clase para registrar la reescritura y manejar la solicitud si se ha encontrado una coincidencia.
ACTUALIZAR
Encontré una manera más simple de manejar esto.
http://example.com/pageid/333/rid/444/title/your-title-here/
Esta nueva forma utiliza
add_rewrite_tag
con_
para ejecutar la consulta para la identificación de una página sin estropear la consulta principal. En el ejemplo anterior,333
simplemente modificaría la consulta para buscar esa ID de publicaciónpre_get_posts
. Podrías modificartemplate_redirect
o fácilmentetemplate_include
.Para hacer referencia a todos los parámetros pasados más tarde:
REFERENCIA
fuente
Si desea una solución simple, esta podría ser (no ha probado el código, por lo que podría no ser tan simple si no funciona ...) o, al menos, le dará alguna pista de lo que debe hacer. Si visita http://thereforei.am/2011/10/28/advanced-taxonomy-queries-with-pretty-urls/ encontrará un premio extra: un Reescriba el generador de reglas en el artículo. He usado esto antes pero no en una situación exactamente como esta. Intenta combinar esa función con algo como esto:
Si no desea utilizar la función eg_generate_rewrite_rules, debe configurar las reglas usted mismo. Puede encontrar información sobre cómo hacerlo en ese artículo.
Más información: http://codex.wordpress.org/Rewrite_API/add_rewrite_tag
fuente