jueves, 9 de septiembre de 2010

URL legibles - Permanent Links in WordPress 3.0.1

Esta entrada pretende aclarar y guiar, un poco, la configuración necesaria para activar la generación y uso de enlaces permanentes (comprensibles para el ser humano y más aprovechables para ser indexados por los motores de búsqueda de los buscadores) en Wordpress 3.0.1:


Un enlace permanente es por ejemplo "www.miblog.com/inicio/", en vez de "www.miblog.com/?p=1".


Configuración en Wordpress


En el gestor del blog vamos a "Ajustes"->"Enlaces permanentes".


Elegimos "Estructura personalizada" y definimos la estructura de los enlaces permanentes, por ejemplo como:


/%year%/%monthnum%/%postname%/


En el sitio construido con Wordpress, podemos tener páginas estáticas y páginas que albergan las entradas del blog. Para cada uno de esos tipos de páginas, la regla de reescritura para generar el enlace permanente es distinta.


Páginas estáticas


En el menú de "enlaces permanentes", si seleccionamos cualquier opción distinta de "predeterminado", las páginas estáticas tomarán la URI de la siguiente forma: "http://www.miblog.com/titulo_pagina/". Si la página está anidada dentro de otra, por ejemplo la página 2 tiene como superior a la página 1, la URI refleja este anidamiento:


http://www.miblog.com/titulo_pagina1/titulo_pagina2/


Páginas de una entrada del blog


Y las páginas que contienen entradas concretas del blog, tomarán el patrón definido en el menú "Enlaces permanentes", del apartado "Ajustes", del gestor del sitio de Wordpress. Supongamos que en la página 3 es donde se muestra el listado de las entradas(posts) del blog. Y a su vez la página 3, está anidada en la página 1, que no tiene a ninugna por encima (es por ejemplo la de inicio). Y supongamos que tenemos una entrada con el título "hoy no me puedo levantar", y la fecha de esa entrada es 30-02-2010. Para la entrada anterior se generaría la siguiente URI:


http://www.miblog.com/2010/02/hoy-no-me-puedo-levantar/


Como se puede apreciar, se ha aplicado el patrón de renombrado ("/%year%/%monthnum%/%postname%/") definido en el menú de "Enlaces permanentes" y no se ha tenido, para nada, en cuenta la página donde se muestra el listado de las entradas.


Algunas reglas y sugerencias para los patrones de renombrado


Hay que asegurarse de que cada enlace persistente apunta a una única entrada, para se debe terminar la estructura con %post_id% (identificador de la entrada) o %postname% (titulo de la entrada).


Por razones de rendimiento, para que a Wordpress le cueste menos diferenciar la URI de una página de la de una entrada(post), es preferible no iniciar la estructura del patrón para enlaces permanentes con campos %category%, %tag%, %author% o %postname%.


Lo común es iniciarlo con algún campo relativo a fecha. Por ejemplo:


/%year%/%monthnum%/%day%/%postname%/


Configuraciones necesarias en Apache


Si usamos Apache como servidor web, debemos activar la carga del módulo de escritura. Para ello, en el fichero de configuración del servidor "httpd.conf", debemos descomentar la línea:


#LoadModule rewrite_module modules/mod_rewrite.so


Descomentar, es borrar en este caso, el símbol "#", dejandolo así:


LoadModule rewrite_module modules/mod_rewrite.so


Reiniciamos el servidor para que se cargue el módulo y voilá, ya tenemos enlaces permanentes para las páginas de nuestra web construida con Wordpress.