Buscar y reemplazar una url en la base de datos

En un sitio Joomla que administro tuve la necesidad de cambiar las urls de todas las imágenes en todos los artículos de un pequeño sitio de noticias… alrededor de 5000 imágenes. Como no me gusta gastar más energía de la necesaria tuve que recurrir al poder de MySQL para evitar el trabajo de reemplazar esas urls una por una en los 5000 artículos (una locura).

Aunque existen plugins que hacen esa tarea de forma fácil (DB replacer) generalmente esos plugins son pagos y como soy muy pobre esa no era una opción.

Para realizar este hechizo sin ningún costo simplemente hay que recurrir a los comandos UPDATE y REPLACE de la siguiente manera. En mi caso necesitaba cambiar la tabla “content” en la columna “introtext” (introtext o fulltext es donde generalmente se ponen las fotografías de los artículos en la base de datos de Joomla!)

Utilizando la comodidad de PhPMyAdmin me dirigí a la solapa SQL y coloqué esté código.
UPDATE `nombredelatabla` SET `nombredelacolumna` = REPLACE(
`nombredelatabla`.`nombredelacolumna`,
"http://",
"https://"
)

Con ese pequeño código le decimos a MySQL que actualice la columna “nombredelacolumna” que está en la tabla “nombredelatabla”, reemplazando “http://” con “https://” .

También se puede usar para cambiar las urls absolutas de las imagenes y convertirlas en relativas. En lugar de una url http://tusitio/imagenes/  que pasen a usar /imagenes/. Esto es útil para que algunos plugins de procesamiento de las fotos tengan menos problemas a la hora de crear miniaturas y para evitar que los navegadores bloqueen imágenes por considerarlas contenido mixto cuando tu sitio usa SSL.

Bueno eso es todo amiguitos, ese fue el tutorial de como buscar y reemplazar para gente pobre.

Deja un comentario

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