Muevo sitios casi a diario.
Primero, obtenga e instale el oficial CLI de WP instalado.
A continuación, desde el sitio que se está moviendo de, cd
en el directorio raíz de WordPress y exporte la base de datos usando:
wp db dump
Eso creará un archivo de volcado de SQL en ese directorio. Mueva ese archivo a la nueva ubicación, cd
en el directorio raíz de WordPress allí e importarlo usando lo siguiente (obviamente reemplazando el archivo apropiadamente):
wp db import your-file-here.sql
Finalmente, mientras aún está en la nueva ubicación, ejecute el comando buscar-reemplazar:
wp search-replace "http://example.com:1234" "https://example.com:5678" --recurse-objects --all-tables --dry-run
La primera URL es la antigua y la segunda es la nueva. Asegúrese de ser exacto, incluido el protocolo (HTTP frente a HTTP), el dominio (www.ejemplo.com vs ejemplo.com) y puerto. Nunca ejecute esto sin el protocolo tampoco, puede o no hacer lo que espera. Similarmente, no ejecútelo con una barra diagonal final (como https://example.com/
) porque eso tiene otras implicaciones.
El siguiente argumento (--recurse-objects
) indica a la CLI que deserialice los objetos y los recorra, que es lo que se necesita para actualizar de forma segura las metatablas y las tablas de opciones.
El siguiente argumento (--all-tables
) solo significa recorrer toda la base de datos que incluye complementos.
El último argumento (--dry-run
) significa que no se realizarán actualizaciones. Siempre ejecútelo hasta que esté seguro de que no tiene ningún error tipográfico, luego ejecute el comando sin él.
Nota
Además, siempre realice una copia de seguridad de la base de datos antes de realizar importaciones o actualizaciones, por si acaso:
wp db dump
Nota adicional
El comando buscar-reemplazar también tiene una opción llamada --export
que puede usar y omitir el volcado inicial. Sin embargo, personalmente no hago esto, porque si estoy haciendo una copia de seguridad de vivo a desarrollador, no quiero incurrir en ninguna CPU/IO adicional en el servidor vivo, quiero que esa carga suceda en el servidor de desarrollo más adelante. en. También podría usarlo condicionalmente, pero me gusta tener una configuración de comandos que uso en todas partes.
una nota mas
Los navegadores, específicamente Chrome, tienden a recordar las redirecciones, al menos temporalmente. Debido a esto, cuando probé que el movimiento realmente funcionó, fuertemente Recomendamos probar siempre en una ventana de navegación privada. No puedo decirte cuántas horas hemos perdido yo y otros desarrolladores debido a esto. Una vez que esté seguro de que se ha actualizado, puede volver a un navegador normal.
.