Encontrar y reemplazar bases de datos de WordPress en masa - The Easy Way
Hay varias ocasiones en las que tenemos que cambiar las URL en nuestra base de datos del sitio web de WordPress . Por ejemplo, tenemos que hacer esto después de migrar una base de datos de WordPress desde un sitio, por ejemplo desde el sitio de producción remota http://acme.com
, al sitio web de desarrollo local http://acme.dev
en nuestra computadora.
WordPress.org alberga una gran cantidad de complementos, como WP DBManager y WP Migrate DB, y también hay una serie de herramientas de terceros que le permiten importar bases de datos fácilmente. La parte difícil es tener que cambiar cada instancia de URL dentro de la base de datos.
Después de migrar la base de datos, las URL dentro de ella aún apuntan al sitio anterior, en este caso a acme.com
. Puede encontrar la URL anterior en la tabla wp_options
, establecer como el valor de las opciones de siteurl
y de home
, y probablemente también esté incrustado en otras filas y tablas en la base de datos. Estas viejas URL pueden eventualmente evitar que su sitio se ejecute correctamente, por lo que debe cambiarlas a la nueva URL, en nuestro ejemplo a acme.dev
.
acme.dev
simplemente conducirá a una página en blanco .Entonces, ¿cómo cambiamos todas estas URL en la base de datos?
Ejecutando una consulta SQL
Por lo general, las personas ejecutarían la siguiente consulta SQL que reemplaza los valores de las opciones de siteurl
y de home
en la tabla wp_options
.
ACTUALIZACIÓN wp_options SET option_value = replace (valor_de_opción, 'http://acme.com', 'http://acme.dev') WHERE option_name = 'home' O option_name = 'siteurl';
Posteriormente, utilizan otra consulta SQL para reemplazar todas las ocurrencias de URL en la tabla wp_posts
, es decir, en la columna post_content
de cada fila.
ACTUALIZACIÓN wp_posts SET post_content = replace (post_content, 'http://acme.com', 'http://acme.dev');
Ejecutar estas consultas es una solución viable, pero al mismo tiempo, no es conveniente hacerlo. Podría ser incluso desgarrador, viendo cómo la base de datos puede volverse descontrolada debido a una simple supervisión dentro de la consulta.
Aprovechando WP-CLI
Otra ruta que podemos hacer, y que he encontrado que es una alternativa más útil, es aprovechar la línea de comando de WP-CLI . Esto significa que deberá tener instalada WP-CLI.
Suponiendo que ha instalado WP-CLI y tiene el comando wp
accesible como alias, navegue hasta el directorio donde residen sus archivos de sitio de WordPress.
Luego, ejecute el siguiente comando:
wp search-replace 'http://acme.com' 'http://acme.dev
El primer parámetro, 'http://acme.com'
, es la entrada anterior que se sustituirá por la segunda, 'http://acme.dev'
.
wp_options
y la tabla wp_options
, y reemplazará cada instancia de la entrada pasada a través de los parámetros del comando.Como puede ver en la captura de pantalla anterior, se han realizado un total de 225 reemplazos. Y lo hemos hecho a través de una simple línea de comando.
Creo que vale la pena mencionar que podemos usar el comando wp search-replace
, no solo para reemplazar las URL, sino también cualquier valor almacenado en la base de datos. También podemos limitar la operación en una determinada tabla pasando el nombre de la tabla como el cuarto parámetro, de la siguiente manera:
wp search-replace '.jpg' '.webp' wp_posts
Al ejecutar el comando anterior, solo buscará a través de wp_posts
, la tabla que almacena nuestro contenido (publicaciones, páginas, etc.) y reemplazará la extensión de imagen de .jpg
a .webp
.
WP-CLI hace que una operación enmarañada de SQL parezca más intuitiva, y usted puede trabajar con ella de una manera más conveniente. Si desea ajustar sus comandos, consulte la documentación de WP-CLI, que le proporciona una lista de opciones para realizar una operación más avanzada con el comando wp search-replace
.
Emoción y narración de historias: Cómo contar historias puede darte más clientes
Todos son cuentistas. Las historias son cómo exploramos nuestro entorno y nos comunicamos con otros, ya sea para persuadirlos, inspirarlos o simplemente para entretenerlos. Como diseñadores, la narración de historias es una parte integral de nuestro proceso creativo, porque usamos historias para conectarnos con nuestros clientes, y especialmente con los usuarios que interactúan con nuestros diseños.Hoy,
Showcase of Dazzling Light Painting Artworks
Se puede decir que la luz es la fuente de todo arte. Es porque ves una obra de arte no solo usando tus ojos, sino también con la luz que hace que el arte sea visible. Pero la situación va a ser diferente en este post ya que la luz no es solo algo que hace que el arte sea visible, sino el foco principal de hermosas obras de arte con la ayuda de pintores de la luz.S