viernes, 12 de mayo de 2017

Promueve los antiguos posts de tu #Wordpress con una simple sentencia #SQL

Hace aproximadamente unos quince (15) años desarrollé Esfera5, el Portal Espiritual de la Red.

Mucha lluvia ha caído desde entonces, pero a pesar de todas las situaciones, momentos y experiencias que han venido llenando mi vida, continúo sin abandonar aquella primera experiencia de emprendimiento.

Gente se ha acercado y gente se ha alejado, he cambiado conceptos y tecnologías, de HTML a PHP con PHPNuke y algunos otros CMSs del momento como PostNuke, Mambo, y luego Joomla; pero Esfera5 continúa vivo aunque poco actualizado.

Recientemente me preguntaba, si podría darle un poquito mas de vida ahora que preparo su nueva versión sobre Wordpress (http://esf.era5.mx/beta/), así que me tomé algo de tiempo para buscar algunos plugins que me permitieran inyectar algo de oxigeno a este sitio.

Encontré el plugin Republish Old Posts que vuelve a publicar mensajes antiguos automáticamente estableciendo la fecha a la fecha actual.




Sin embargo, si se quiere ir más allá de 90 días, requieres comprar una licencia Pro, la cual aunque ciertamente no resulta costosa (US$9.95), pero como aún no estamos en condición de adquirirla ya que no han habido muchas Donaciones para este proyecto (de hecho no ha habido ninguna), busque un poco más para ver de que manera podía resolver este asunto.

Al no encontrar una opción viable a pesar de la amplia oferta de plugins que hay disponibles para Wordpress, cambié un poco la perspectiva del problema.

Ingresé al panel de mi hosting y accedí a la base de MySQL haciendo uso del phpMyAdmin. Identifiqué la tabla de los posts y allí las columnas que albergan las fechas.

Una rapida búsqueda me proporcionó la estructura de la sentencia SQL que debía ejecutar. Agradecimiento a Adi por ese tip compartido en StackOverflow (http://stackoverflow.com/questions/14491906/changing-year-in-mysql-date).

That's simple:
for DATETIME:
UPDATE table_name
SET date_col=DATE_FORMAT(date_col,'2013-%m-%d %T');
for DATE:
UPDATE table_name
SET date_col=DATE_FORMAT(date_col,'2013-%m-%d');

Como se vé, no se necesita mucho esfuerzo para construir la sentencia que vendría a promover los antiguos posts, pero igualmente se las comparto por si alguien más anda en estos mismos menesteres.


UPDATE `xxx_posts` SET `post_date`= DATE_FORMAT(`post_date`,'2016-%m-%d %T') ,`post_date_gmt`= DATE_FORMAT(`post_date_gmt`,'2016-%m-%d %T') ,`post_modified`= DATE_FORMAT(`post_modified`,'2016-%m-%d %T') ,`post_modified_gmt`= DATE_FORMAT(`post_modified_gmt`,'2016-%m-%d %T') WHERE 1 

No olviden cambiar el prefijo de la tabla por el que hayan definido para la instalación de su wordpress.




Espero te haya sido útil este post.

………….

Quiero man.tener.me informado: Seguir en Twitter @eldavid_oficial https://twitter.com/eldavid_oficial

Regálame un ME GUSTA. Y si eres solidario, COMPARTE para que otros puedan aprovecharlo.

No hay comentarios.:

Publicar un comentario

Nota: sólo los miembros de este blog pueden publicar comentarios.