Cambiar URL interna de WordPress usando WP-CLI

6 de abril, 2017 @ 12:51 — 0 comentariosDescargar PDF

Logotipo wordpress

En esta guía trataremos de explicar como hacer un cambio de URL Interna de wordpress. Este cambio se utiliza cuando pasamos de una web de pruebas a producción por ejemplo.

Acceder a la consola ssh

Lo primero sera acceder a la consola del servidor via SSH:

Como acceder vía SSH a tu cuenta

Acceder a la carpeta de la web

Lo siguiente sera acceder al directorio donde este la web.
Si es el dominio principal puedes hacer:

cd www

Si es un dominio adicional:

cd sites/www.midominio123.com

sustituyendo la ruta donde esta la web.

Crear un backup de la base de datos de wordpress

Por si las moscas, vamos a crear una copia de seguridad de la base de datos

wp-cli db export

Nos dará el nombre del fichero .sql en el que se ha guardado la base de datos

Cambio de URL

En este punto jugamos con fuego 😉 hay que tener claro que es lo que tenemos que hacer.

Para cambiar la url interna de wordpress tenemos que recorrer toda la base de datos y sustituir una cadena de caracteres por otra. Ejemplo:

URL Original: http://midominio123.com

Nueva URL:  http://www.midominio123.com

Comprobamos que el comando es correcto con el parámetro --dry-run:

wp-cli search-replace --all-tables --dry-run '/midominio123.com' '/www.midominio123.com'

Al añadir el --dry-run  nos dara un resumen de los cambios que puede hacer, pero no hara ninguno. Si estamos de acuerdo solo tendremos que quitar el --dry-run del comando y volver a ejecutarlo.

Ejecutamos el cambio en base de datos sin el parámetro --dry-run:

wp-cli search-replace --all-tables '/midominio123.com' '/www.midominio123.com'

¡Ya esta el cambio!

Una vez hecho esto, limpiamos la cache de la web:

wp-cli cache flush

Solo queda comprobar que la web funciona correctamente en la nueva URL.

Recuperación de desastre

Si por alguna razón, el cambio no ha sido correcto, podremos recuperar la versión original de la base de datos que hemos salvado previamente con este comanto.

wp-cli db import NOMBRE_FICHERO.sql

*** Sustituir el NOMBRE_FICHERO.sql por el nombre en el que se salvo la base de datos en el punto anterior.