Hace tiempo, cuando migramos de blogger a WordPress escribimos un artículo sobre cómo realizar la migración sin perder el posicionamiento web. Una parte fundamental para mantener ese posicionamiento es conseguir que los enlaces sigan funcionando. Para ello existe un plugin que he estado usando hasta ahora. Sin embargo he decicido dejar de usarlo y sustituir todos los enlaces antiguos por los nuevos usando expresiones regulares. En éste artículo veremos cómo aplicar este cambio.



Descargar la base de datos

Es más sencillo descargar una copia de la base de datos para realizar las sustituciones necesarias, ya que podremos aplicar las expresiones regulares en cualquier editor de texto. Para ello, si usamos PhpMyadmin hay que entrar al panel de administración, seleccionar la base de datos a exportar, en este caso la de WordPress, pulsar el botón Export y dejar todo tal y como aparece en la siguiente imagen:

Generar la expresión regular necesaria

Ahora que tenemos la base de datos descargada, la descomprimimos y nos paramos a pensar qué expresión regular nos hace falta. En este caso, buscamos reemplazar URLs del tipo dominio.com/2011/12/nombre-artículo por otras del tipo dominio.com/nombre-articulo. Es necesario usar antes el plugin para redireccionar los artículos de blogger a WordPress para que se creen los enlaces del tipo dominio.com/nombre-articulo. Con esto en mente, construimos la siguiente expresión regular:

elbauldelprogramador\.com\/\d+\/\d+\/((?:\w+-?)+)\.html

Explicación de la expresión regular

Lo que tienen las expresiones regulares es que cuando pasa un tiempo, y aunque la hayas creado tú, es probable que no tengas ni idea de por qué la hiciste y cómo se te ocurrió. Hace tiempo en la sección Viñetas Geek de Domingo apareció una imagen que refleja esta sensación:

Así que pasemos a explicarla:

Esto debería bastar, con cualquier editor, en este caso con Geany, podemos buscar y reemplazar las cadenas que coincidan con esta expresión:

Lo cual sustituirá la URL antigua por lo que coincidión en la expresión ((?:\w+-?)+), cuyo contenido se puede referenciar con \1, donde 1 es el número del grupo, si hubiera varios, se referenciarían con \1, \2 etc. Con esto, ya podemos dejar de usar el plugin.

Índice