Los enlaces permanentes es uno de los aspectos más importantes de las bitácoras, sobre todo de cara a su gestión y a su indexación por los motores de búsqueda. Configurarlos bien es vital para conseguir una buena accesibilidad y hacer las webs más humanas.
WordPress cuenta con un sistema de configuración de enlaces permanentes bastante avanzado. Mi intención era pasar de un enlace permanente del tipo:
dominio.com/?p=99
que semánticamente no significa nada, a otro del tipo:
dominio.com/2005/08/12/ejemplo-enlace/
mucho más intuitivo y que puede ser indexado para que, por ejemplo, si alguien busca en Google las palabras ‘ejemplo enlace’, nuestra entrada aparezca en las primeras posiciones.
Configurando WordPress
Para conseguir esta organización debemos comprobar que el directorio raíz de la bitácora tenga derechos de escritura. Si no es así tenemos que hacerlo antes de continuar. Cualquier programa de FTP cuenta con esta posibilidad.
Una vez completado este paso entramos en la zona de administración de WordPress y vamos a Opciones/Permalinks. Dentro de esta pantalla se explica bastante claramente las etiquetas o ‘tags’ que podemos utilizar para configurar la estructura de nuestros enlaces permanentes. El formato más utilizado es el que indiqué arriba, con año, mes, día y titulo de la entrada.
Una vez que hemos colocado las etiquetas en la caja de texto titulada ‘Estructura’ también tenemos la posibilidad de usar una categoría base o directorio virtual raíz a partir del cual ‘cuelga’ toda la estructura de directorios virtuales. Después de establecer todos estos parámetros pulsamos el botón para actualizar.
NOTA: Como se indica, si nuestro servidor no es Apache tenemos que poner /index.php/ antes de la estructura.
Lo que WordPress realiza a continuación es escribir un archivo de instrucciones especiales que Apache interpretará cuando sirva una página. Este archivo se llama .htaccess. Con estas instrucciones se enmascararán las direcciones ‘feas’ para que se vean con el formato que hemos configurado.
El funcionamiento de .htaccess
Vamos a ver rápidamente el funcionamiento de este archivo con una instrucción como ejemplo. Cogemos una de las instrucciones de este archivo .htaccess:
RewriteRule ^([0-9]{4})/([0-9]{1,2})/([0-9]{1,2})/?$ /index.php?year=$1&monthnum=$2&day=$3 [QSA,L]
Literalmente la orden ‘reescribe la regla’ de forma que convierte /index.php?year=$1&monthnum=$2&day=$3 (ejemplo: /index.php?year=2005&monthnum=08&day=12) en otra de la forma /2005/08/12/?nombre_post. Esto se consigue a través de expresiones regulares que controlan el formato de salida.
Inconvenientes y mejoras
Todo esto está muy bien si vives en el mundo anglosajón. A pesar de que tengo instalada la actualización que convierte WordPress al castellano, después de completar todo el proceso y conseguir que los enlaces se muestren como yo quiero, veo que las rutas a las categorías están en inglés. Me salen cosas del tipo /category/informatica/ cuando pincho en esta categoría. Mi intención era cambiarlo por /categoria/informatica/, aunque por el momento no lo he conseguido.
Lo primero que se me ocurrió fue editar manualmente el archivo .htaccess para sustituir las conversiones en inglés por otras en castellano. Pero inexplicablemente me fue imposible sobreescribirlo, a pesar de que tiene todos los permisos necesarios. Si alguien sabe como hacerlo, por favor que deje un comentario o me envíe un correo contándomelo. Se lo agradecería.