Como arreglar gráficamente los URLs de tu sitio WordPress en tu BD al migrar desde tu servidor local a producción

En el anterior artículo de este blog, hablé sobre Como migrar la base de datos de WordPress de local a producción y mediante un programa arreglar las URLs que quedan con el dominio localhost. Sin embargo, varias personas me comentaron su imposibilidad de utilizar ese método porque no tienen acceso SSH o a la terminal de sus servidores, pues sus proveedores de alojamiento web solo les da cuenta FTP y acceso a un panel.

Para estos casos, existe un programa de código abierto llamado Search Replace DB que consiste en una página web que instalas en la raíz del sitio, ésta detecta la configuración de la base de datos de WordPress y mediante un sencillo formulario puedes: escribir la URL que habías configurado como local y la de producción, seleccionar las tablas donde debe buscar la información, migrar a InnoDB (no veo razón de usar otro motor en WordPress) y probar los cambios antes de ejecutarlos.

Interfaz de Search Replace DB

Como ves, es una aplicación sencilla de utilizar y solo requieres tener acceso para subir archivos al servidor. Luego de realizar estos cambios, puedes borrar los archivos con un solo clic para evitar futuros accesos no autorizados a esta herramienta y causar daños en tu base de datos.

Espero que les sea útil esta información y si conocen otra alternativa no duden en comentarla.

 

 

 

Hace 6 años en esa fecha: Oracle compra Sun

Hace 7 años en esa fecha: Hacer arranque dual con Vista y Linux

Hace 8 años en esa fecha: Análisis ( Review ) de Archlinux 0.8 'Voodoo'

Como migrar tu base de datos de WordPress desde tu servidor local a producción

Generalmente si eres un buen desarrollador, tendrás tu entorno de desarrollo (servidor web, base de datos, etc) instalado en tu máquina local. De esta manera, puedes trabajar rápidamente al evitar solicitudes al servidor web remoto cada vez que realices modificaciones en un archivo o necesites visualizar cambios (por nombrar ejemplos), además, no requieres conexión a Internet, por lo que si ocurre una falla con el servicio o estas usando el ancho de banda para descargar cosas, no afectará tu flujo de trabajo.

En el caso de WordPress, existen dos opciones de configuración: home y siteurl que indican las URLs de la página inicial y sitio respectivamente. Por ello al realizar una instalación y configuración local, éstas variables tienen valores que apunta a localhost. Entonces, al momento de migrar la base de datos al servidor de producción, muchos enlaces quedan bajo el dominio localhost y no al dominio del sitio. Cambiar estos valores no ayuda mucho, pues si tienen imágenes, vídeos y archivos enlazados a contenidos creados dentro del editor, verán que no son accesibles porque siguen apuntando a localhost.

Para cambiarlo, se puede hacer con WP-CLI que es una útil herramienta de interfaz de comandos para WordPress, donde puedes administrar el sitio, datos, respaldos, entre otras cosas, sin salir de la consola. Pues para renombrar los URL de localhost a tu dominio, simplemente debes ejecutar los siguientes dos comandos.

Instalas wp-cli en tu sitio wordpress de producción usando curl:

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

Luego ejecutas el comando search-replace cuyo primer parametro es la dirección actual (la local) y el segundo la dirección final del sitio:

wp search-replace 'http://localhost/sitio-de-desarollo' 'http://sitio-de-produccion.com/'

En caso que no te sirva el comando anterior porque no tienes configurado para la ejecución de archivos PHP automáticamente desde la consola ejecuta:

php wp-cli.phar search-replace 'http://localhost/sitio-de-desarollo' 'http://sitio-de-produccion.com/'

¡Listo! El comando se encargará de buscar en la base de datos cualquier referencia y la actualiza.

P.D: Si siempre trabajas en el servidor de producción o en un servidor remoto, estas perdiendo tiempo, ancho de banda, recursos y sobre todo dinero. ¡Aprende a optimizar!

Hace 9 años en esa fecha: Software como servicio pago

CrudGen 1.0 un generador de CRUD para Postgresql

CrudGen fue mi proyecto de tesis de mis estudios de pregrado, consiste en un generador de páginas Create, Report, Update y Delete para base de datos PostgreSQL utilizando el gestor phpPgAdmin. Es uno de los plugines “oficiales” del proyecto y al encontrar un poco de tiempo libre decidí actualizarlo para añadir ligeras mejoras, compatibilidad y mantener vivo el proyecto.

Hoy he lanzado la versión 1.0, pues considero que el plugin cumple con la tarea inicial para la que fue desarrollada y es compatible con las últimas versiones de Postgres y phpPgAdmin, el administrador web de la base de datos. Si te interesa el proyecto, ver como funciona y aprender a crear páginas web rápidamente usando esta herramienta, puedes ver mi entrada sobre este generador de páginas web para PostgreSQL usando phppgadmin que incluye vídeos, información, entre otros.

Ejemplo de una página de visualización usando CrudGen

Finalmente, te invito a chequear el código en el sitio de CrudGen en Github, para utilizarlo o colaborar con cualquier aporte. Deseo que lo prueben y reporten errores, y si son desarrolladores frontend, me gustaría que colaboraran con plantillas para las páginas generadas.

No te olvides de poner el WHERE en el DELETE FROM

Ya tengo mucho tiempo que no agrego nuevo contenido a mi sección de Música Geek y recordando que hace unos meses, un conocido borró los datos de una tabla en la base de datos al olvidar colocar el criterio para eliminar la información, por eso, les dejo ésta canción para que no olviden colocar el WHERE al usar el DELETE FROM.

NoSQL Style (Parodia Geek de Gangnam Style)

Leyendo una entrada de Geeksroom ví esta buena parodia (no musicalmente) de Gangnam Style pero acerca de la tecnología NoSQL, la letra es realmente buena, cuando dijo que era para datos estructurados me pareció bien hecha pues aclara cuando usarla (mucha gente piensa que NoSQL es un sustituto de SQL).

En fín, les dejo observar este vídeo para que disfruten un rato Geek y Musical.

¡Comparte este video con sus amigos Geeks!

Hace 1 año en esa fecha: ¡Felices 10 años Archlinux!

Hace 3 años en esa fecha: A Google hay que tenerle miedo

Hace 5 años en esa fecha: La generación que conoce el mundo sin y con Internet

Crudgen: Generador CRUD para PostgreSQL usando phppgadmin

Crudgen fue mi proyecto de tesis de grado que culminé a medidados del 2009, el mismo consiste en un generador de páginas para realizar operaciones CRUD (Create, Report, Update y Delete) en una base de datos Postgres a través de phppgadmin, el mejor gestor web para administrar este tipo de base de datos. Para ese entonces modifiqué el código fuente de varias partes de la aplicación, dificultando su integración en el programa, al año siguiente (2010) decidí reescribirlo y modificar su uso siguiendo las sugerencias del equipo, sin embargo, por falta de tiempo lo abandoné. En agosto de 2011, se agregó soporte para complementos por parte de Leonardo Sápiras al participar en el Google Summer of Code, permitiendo escribir un plugin con esta funcionalidad sin modificar el código fuente del programa.En el último año, cuando tenía tiempo libre me puse a rescribir (por tercera vez) el programa y hasta hace poco logré finalizarlo.

El plugin permite a través de pocos pasos, generar páginas web para realizar operaciones sobre las tablas seleccionadas de una base de datos. El código generadoson funciones PHP para realizar las acciones, las cuales son llamadas desde una plantilla HTML, esta plantilla, puede ser programada fácilmente o fácil de adaptar desde un diseño un existente, permitiendo obtener resultados con diseños personalizados (a diferencia de las otras soluciones donde todos los resultados tienen la misma apariencia).

Respecto al código del lado del servidor, soporta las bibliotecas PGSQL o PDO_PGSL brindando posibilidad al usuario de elegir la que mas le convezca (debería usarse siemper PDO para mayor seguridad), posee seguridad respecto a ataques de inyección SQL, usa PHP5 de fácil lectura y con flexibilidad para adaptarla a los requisitos del programador. Centraliza funciones comunes entre las páginas y mucho mas.

Si les interesa, les invito a ver este vídeo en inglés (me di cuenta que necesito prácticar) donde explico todo el funcionamiento del programa, sino entienden el idioma, no importa, pueden ver todo el proceso y ver lo que genera el plugin.

Espero que lo utilicen, compartan esta información, reporten bugs, se unan al proyecto y aporten código al mismo.

Para utilizarlo pueden descargarlo desde la página de Crudgen en Github.

Obtener la clave primaria (Primary key) de una tabla con Postgresql

Si alguna vez necesitan obtener el nombre de la columna de una clave primaria, para una tabla almacenada en el gestor postgresql utilizando una sentencia SQL, lo pueden hacer con la siguiente sentecia:

SELECT column_name
FROM information_schema.key_column_usage
WHERE TABLE_NAME='{$table}' AND constraint_name='{$table}_pkey';

El caso anterior es para un string con php donde $table almacena el nombre de la tabla de la que queremos obtener el nombre de su clave primaria. Para otros lenguajes, basta sustituir el {$table} por el nombre de la tabla.

Espero que les sirve y les ahorre tiempo.

Hace 2 años en esa fecha: Mplayer y Monitor Widescreen