{"id":11182,"date":"2025-11-25T09:48:07","date_gmt":"2025-11-25T08:48:07","guid":{"rendered":"https:\/\/bitacora.eniac2000.com\/?p=11182"},"modified":"2025-11-25T09:48:07","modified_gmt":"2025-11-25T08:48:07","slug":"actualizacion-de-este-sitio-web-escogiendo-un-nuevo-sistema-de-galerias","status":"publish","type":"post","link":"https:\/\/bitacora.eniac2000.com\/?p=11182","title":{"rendered":"Actualizaci\u00f3n de este sitio web. Escogiendo un nuevo sistema de galer\u00edas"},"content":{"rendered":"<div class=\"seriesmeta\">Esta entrada es la parte 2 de 5 de la serie <a href=\"https:\/\/bitacora.eniac2000.com\/?series=actualizacion-de-mi-sistema-wordpress-y-galeria-integrada\" class=\"series-1852\" title=\"Actualizaci\u00f3n de mi sistema WordPress y galer\u00eda integrada\">Actualizaci\u00f3n de mi sistema WordPress y galer\u00eda integrada<\/a><\/div>\n<p>El primer punto era escoger un nuevo sistema de galer\u00edas. Ten\u00eda meridianamente claro que no quer\u00eda quedar cautivo de un proveedor <em>online<\/em>, y tambi\u00e9n que quer\u00eda optar por un sistema basado en c\u00f3digo abierto y mantenible, que contara con una comunidad potente, y que fuera compatible con las \u00faltimas tecnolog\u00edas existentes. E, idealmente, que integrara bien con WordPress. El problema ven\u00eda porque hac\u00eda cosa de 20 a\u00f1os que no investigaba en este campo, y que mis conocimientos al respecto, siendo compasivo, estaban algo <em>obsoletos<\/em>. Y este fue el primer punto en el que una IA entr\u00f3. Y el primer punto en el que se confirm\u00f3 que a las IAs es conveniente preguntarle <em>sobre cosas que ya conozcas<\/em>, si no quieres llevarte sorpresas.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"575\" src=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/piwigo-illustration-1024x575.jpg\" alt=\"\" class=\"wp-image-11183\" srcset=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/piwigo-illustration-1024x575.jpg 1024w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/piwigo-illustration-300x168.jpg 300w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/piwigo-illustration-768x431.jpg 768w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/piwigo-illustration.jpg 1513w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Ilustraci\u00f3n de Piwigo<\/figcaption><\/figure>\n\n\n\n<p>Y la pregunta, naturalmente, fue esa: qu\u00e9 sistema me pod\u00eda recomendar que cumpliera con los requisitos anteriores. No recuerdo exactamente qu\u00e9 IA utilic\u00e9, si fue ChatGPT, Perplexity o alguna otra. Lo que s\u00ed recuerdo es que una de las opciones recomendadas fue <a href=\"https:\/\/es.piwigo.org\/\" data-type=\"link\" data-id=\"https:\/\/es.piwigo.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">Piwigo<\/a>. Estuve explorando un poco sobre los sistemas que me recomend\u00f3, y fue el que m\u00e1s me convenci\u00f3, principalmente por lo siguiente:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Piwigo es software libre, f\u00e1cilmente instalable en servidores propios sobre Debian, sin dependencia de servicios en la nube ajenos.<a href=\"https:\/\/tecnolitas.com\/blog\/piwigo-tu-propia-galeria-de-fotos\/\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/li>\n\n\n\n<li>\u200bPermite gesti\u00f3n integral de usuarios y permisos, controlando la privacidad y el acceso a \u00e1lbumes o im\u00e1genes concretas, lo que es ideal para uso colaborativo o gesti\u00f3n interna.<a href=\"https:\/\/atareao.es\/tutorial\/raspberry-pi-primeros-pasos\/tu-galeria-de-fotos-piwigo\/\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/li>\n\n\n\n<li>\u200bPermite organizar im\u00e1genes en \u00e1lbumes y sub\u00e1lbumes de profundidad ilimitada, etiquetado, b\u00fasqueda avanzada, y visualizaci\u00f3n cronol\u00f3gica en calendario.<a href=\"https:\/\/es.wikipedia.org\/wiki\/Piwigo\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/li>\n\n\n\n<li>Soporta subida de fotos desde m\u00faltiples m\u00e9todos (web, FTP, aplicaciones de escritorio, m\u00f3vil) y ofrece gesti\u00f3n eficiente por lotes y generaci\u00f3n autom\u00e1tica de miniaturas.<a href=\"https:\/\/es.piwigo.org\/version-2.2.0\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/li>\n\n\n\n<li>Se pueden ampliar funcionalidades con multitud de temas y plugins, adaptar el aspecto visual y habilitar funciones interactivas como comentarios o valoraciones.<a href=\"https:\/\/hostsuar.com\/soluciones\/piwigo-galeria\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a>\u200b<\/li>\n\n\n\n<li>Su sistema de administraci\u00f3n y actualizaci\u00f3n es simple, existen complementos de autoupgrade y manejo sencillo de plugins desde la propia interfaz, facilitando el mantenimiento.<a href=\"https:\/\/es.piwigo.org\/version-2.2.0\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/li>\n\n\n\n<li>\u200bExisten plugins espec\u00edficos (como \u201cPiwigoPress\u201d o \u201cMDQ Piwigo Integraci\u00f3n\u201d) que permiten incrustar galer\u00edas, controlar la visualizaci\u00f3n y sincronizar contenidos entre Piwigo y WordPress, incluyendo compatibilidad con el editor de bloques Gutenberg.<a href=\"https:\/\/github.com\/norbusan\/piwigopress\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/li>\n<\/ul>\n\n\n\n<p>Hablemos sobre el \u00faltimo punto. Fue esto lo que me hizo decidirme: manten\u00eda la capacidad de integrar con WordPress mediante <em>plugins<\/em>. Y, lo que a la larga, representar\u00eda el mayor problema. Y es que, si bien es cierto que existen esos <em>plugins<\/em>, lo que no vi en su momento es que llevaban cosa de un a\u00f1o sin mantenerse, y que no funcionaban en la versi\u00f3n m\u00e1s reciente de WordPress. Pero no adelantemos acontecimientos.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"687\" height=\"1024\" src=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/fallo-ia-687x1024.jpg\" alt=\"\" class=\"wp-image-11184\" srcset=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/fallo-ia-687x1024.jpg 687w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/fallo-ia-201x300.jpg 201w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/fallo-ia-768x1144.jpg 768w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/fallo-ia.jpg 784w\" sizes=\"auto, (max-width: 687px) 100vw, 687px\" \/><figcaption class=\"wp-element-caption\">Representaci\u00f3n art\u00edstica de un fallo en una decisi\u00f3n por confiar demasiado en una IA. Generado por IA<\/figcaption><\/figure>\n\n\n\n<p>Una vez escogida la nueva tecnolog\u00eda, quedaba empezar a trabajar. De nuevo, confi\u00e9 en v0 para establecer un plan de acci\u00f3n. A la pregunta de c\u00f3mo realizar una migraci\u00f3n desde mi viejo entorno a uno nuevo, fue capaz de trazar un plan de acci\u00f3n, presentar puntos detallados para realizar el proceso, <em>scripts<\/em> para realizar la actualizaci\u00f3n del sistema en base a esos puntos, y establecer el punto final esperado. Todo muy impresionante. El problema es que, en su concepci\u00f3n inicial, era sencillamente irrealizable.<\/p>\n\n\n\n<p>Y es que la IA hab\u00eda optado por proponer una actualizaci\u00f3n de la Debian, tras lo cual realizar\u00eda una actualizaci\u00f3n del WordPress, y luego una migraci\u00f3n desde Gallery2 a Piwigo. Algo que, simplemente, romp\u00eda completamente mi sitio. Tuve que reconducir la propuesta hacia un plan distinto: desplegar un sistema en paralelo, que bas\u00e1ndose en instalar una nueva Debian limpia, fuera paso a paso desplegando las nuevas piezas del sistema. Eso s\u00ed ten\u00eda visos de poder funcionar. Este fue el plan que propuso v0:<\/p>\n\n\n\n<div class=\"wp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\">\n<h2 class=\"wp-block-heading\"><em>Resumen de la Estrategia Desarrollada<\/em><\/h2>\n\n\n\n<p><em><strong>Plataforma Seleccionada:<\/strong> Piwigo &#8211; elegida por su compatibilidad espec\u00edfica con Gallery2, API REST completa, y estabilidad a largo plazo.<\/em><\/p>\n\n\n\n<p><strong><em>Herramientas Creadas:<\/em><\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><em><strong>Scripts de an\u00e1lisis<\/strong> para extraer datos de Gallery2 (base de datos MySQL + archivos \/g2data\/)<\/em><\/li>\n\n\n\n<li><em><strong>Migrador autom\u00e1tico<\/strong> que transfiere fotograf\u00edas, metadatos, y estructura de \u00e1lbumes a Piwigo<\/em><\/li>\n\n\n\n<li><em><strong>Actualizador de WordPress<\/strong> que convierte autom\u00e1ticamente tags <code>&lt;wpg2id>69986&lt;\/wpg2id><\/code> a la nueva sintaxis de Piwigo<\/em><\/li>\n\n\n\n<li><em><strong>Plugin de WordPress<\/strong> para integraci\u00f3n nativa con Piwigo (lightbox, galer\u00edas responsivas)<\/em><\/li>\n\n\n\n<li><em><strong>Modernizador de WordPress<\/strong> para actualizar seguramente desde 3.4.2 a versi\u00f3n actual<\/em><\/li>\n\n\n\n<li><em><strong>Herramientas de validaci\u00f3n<\/strong> completas para verificar la integridad de la migraci\u00f3n<\/em><\/li>\n<\/ul>\n\n\n\n<p><strong><em>Proceso de Ejecuci\u00f3n:<\/em><\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><em>Ejecutar an\u00e1lisis del sistema actual<\/em><\/li>\n\n\n\n<li><em>Instalar y configurar Piwigo en tu servidor<\/em><\/li>\n\n\n\n<li><em>Migrar fotograf\u00edas y metadatos autom\u00e1ticamente<\/em><\/li>\n\n\n\n<li><em>Actualizar todas las referencias en WordPress<\/em><\/li>\n\n\n\n<li><em>Modernizar WordPress paso a paso<\/em><\/li>\n\n\n\n<li><em>Validar y desplegar el sistema completo<\/em><\/li>\n<\/ol>\n\n\n\n<p><em>Todas las herramientas est\u00e1n dise\u00f1adas para automatizar el proceso al m\u00e1ximo, manteniendo la integridad de tus 69,986+ fotograf\u00edas y sus referencias en WordPress. El sistema incluye backups autom\u00e1ticos y herramientas de rollback para m\u00e1xima seguridad durante la migraci\u00f3n.<\/em><\/p>\n<\/div>\n\n\n\n<p>Estupendo sobre el papel. Pero que fall\u00f3 en el punto 2. Fue completamente imposible migrar autom\u00e1ticamente la estructura de Gallery2 a Piwigo. Sencillamente no funcionaba. As\u00ed que opt\u00e9 por un cambio de enfoque. Ya que la IA hab\u00eda sido capaz de analizar cuidadosamente los datos de Gallery2 presentes en WordPress y de identificar correctamente la estructura de carpetas de Gallery2, \u00edbamos a hacer algo distinto: aprovechar la capacidad de Piwigo de crear autom\u00e1ticamente la estructura de galer\u00edas en base a la importaci\u00f3n de im\u00e1genes desde una estructura de carpetas jerarquizada. Que es exactamente c\u00f3mo hab\u00eda ido almacenando mis im\u00e1genes en Gallery2.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/powered-by-debian-1024x1024.jpg\" alt=\"\" class=\"wp-image-11185\" srcset=\"https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/powered-by-debian-1024x1024.jpg 1024w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/powered-by-debian-300x300.jpg 300w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/powered-by-debian-150x150.jpg 150w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/powered-by-debian-768x768.jpg 768w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/powered-by-debian-1536x1536.jpg 1536w, https:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2025\/11\/powered-by-debian.jpg 2000w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Powered by Debian<\/figcaption><\/figure>\n\n\n\n<p>Desplegu\u00e9 una nueva m\u00e1quina virtual con sistema operativo Debian 13 en mi servidor de virtualizaci\u00f3n, e hice una instalaci\u00f3n nueva de Piwigo. Posteriormente transfer\u00ed la carpeta de im\u00e1genes desde el servidor antiguo (unos 40 GB de im\u00e1genes) y realic\u00e9 la importaci\u00f3n a Piwigo. Fue algo que le cost\u00f3 un poco, pero tras varias pasadas acab\u00f3 por hacer. Ya ten\u00eda mi flamante sistema de galer\u00eda de im\u00e1genes listo utilizar.<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"seriesmeta\">Esta entrada es la parte 2 de 5 de la serie <a href=\"https:\/\/bitacora.eniac2000.com\/?series=actualizacion-de-mi-sistema-wordpress-y-galeria-integrada\" class=\"series-1852\" title=\"Actualizaci\u00f3n de mi sistema WordPress y galer\u00eda integrada\">Actualizaci\u00f3n de mi sistema WordPress y galer\u00eda integrada<\/a><\/div><p>El primer punto era escoger un nuevo sistema de galer\u00edas.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[13],"tags":[517,712,1848,1846],"series":[1852],"class_list":["post-11182","post","type-post","status-publish","format-standard","hentry","category-informatica","tag-debian","tag-gallery2","tag-piwigo","tag-v0","series-actualizacion-de-mi-sistema-wordpress-y-galeria-integrada"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts\/11182","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=11182"}],"version-history":[{"count":1,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts\/11182\/revisions"}],"predecessor-version":[{"id":11186,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts\/11182\/revisions\/11186"}],"wp:attachment":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=11182"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=11182"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=11182"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fseries&post=11182"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}