Control de Versiones de Contenido de WordPress y Copia de Seguridad en GitHub - Flujo de trabajo de n8n

Protege tu contenido de WordPress con este flujo de trabajo avanzado de n8n. Programa copias de seguridad automáticas, compara los cambios en el contenido y sube (commit) solo las entradas nuevas o modificadas a GitHub.

Vista previa del flujo

¿Listo para automatizar?

Descarga esta plantilla de flujo de trabajo de n8n y comienza a usarla al instante.

¿Para quién es ideal?


  • Administradores de blogs que necesitan copias de seguridad de contenido fiables y automáticas.

  • Desarrolladores interesados en tratar el contenido del blog como código para el historial de versiones y su recuperación.

  • Usuarios de n8n que buscan una plantilla avanzada de n8n que demuestre lógica diferencial compleja y flujos de trabajo autorreferenciados.

  • Cualquiera que necesite un flujo de trabajo robusto de n8n para la gestión de archivos en GitHub.

Descripción general

Este flujo de trabajo integral de n8n está diseñado para garantizar la integridad y el historial de versiones de tu contenido de WordPress realizando copias de seguridad de las entradas en un repositorio de GitHub dedicado. A diferencia de las soluciones de copia de seguridad simples, esta automatización de n8n solo realiza commits cuando el contenido es realmente nuevo o modificado, evitando commits innecesarios y manteniendo un historial de repositorio limpio. Utiliza una sofisticada estructura de subflujo de trabajo y un nodo personalizado de n8n para la comparación diferencial del contenido JSON, lo que lo convierte en un excelente ejemplo de las capacidades avanzadas de automatización dentro de n8n.

Cómo funciona

El flujo de trabajo de n8n opera mediante un inicio programado o manual.


  1. Disparador y Extracción: El disparador de n8n (ya sea Programación o Manual) inicia el proceso. El nodo de n8n 'Get All WP Posts' recupera todo el contenido del sitio de WordPress configurado.

  2. Iteración del Flujo de Trabajo: El nodo de n8n 'Execute Workflow' procesa entonces cada entrada de WordPress individualmente. Fundamentalmente, este nodo ejecuta la segunda mitad del mismo flujo de trabajo de n8n (actuando como una subrutina), pasando los datos de la entrada elemento por elemento.

  3. Configuración y Recuperación: La subrutina primero define la configuración global del repositorio de GitHub (Globals). Intenta recuperar el archivo de copia de seguridad existente para esa entrada específica desde GitHub usando el nodo de n8n 'Get file data'. Este nodo está configurado para continuar si falla, anticipando que el archivo podría no existir (es decir, es una entrada nueva).

  4. Comparación de Contenido: El flujo de datos fusiona los metadatos recuperados de GitHub con el JSON del contenido real de WordPress. Se ejecuta el nodo de código personalizado de n8n 'isDiffOrNew'. Este código especializado se encarga de decodificar el contenido base64 de GitHub, ordena las claves JSON tanto de los datos existentes como de los nuevos para garantizar una comparación fiable byte por byte, y establece una variable de estado (github_status: "same", "different", o "new").

  5. Acción Condicional: El nodo de n8n 'Check Status' actúa como un interruptor basado en el resultado de la comparación.

Si el estado es "same", el flujo de trabajo de n8n omite el commit.
Si el estado es "different", el nodo de n8n de GitHub 'Edit existing file' actualiza el archivo con el nuevo contenido.
* Si el estado es "new", el nodo de n8n de GitHub 'Create new file' crea el archivo de copia de seguridad por primera vez.

Esta lógica robusta garantiza que cada ejecución de n8n contribuya significativamente a la gestión de versiones de tu contenido.

Guía de instalación

Para implementar esta potente plantilla de flujo de trabajo de n8n, sigue estos pasos:


  1. Importar: Copia los datos JSON proporcionados e impórtalos directamente en tu instancia de n8n.

  2. Credenciales de WordPress: Configura el nodo de n8n 'Get All WP Posts' con tus credenciales de API de WordPress.

  3. Credenciales de GitHub: Configura las credenciales del nodo de n8n de GitHub ('Get file data', 'Create new file', 'Edit existing file') utilizando un Token de Acceso Personal (PAT) con permisos de escritura en el repositorio.

  4. Configuración Global del Repositorio: Localiza el nodo de n8n 'Globals' (posición 200, 120). Debes editar los parámetros aquí:

Establece repo.owner en tu nombre de usuario de GitHub o el nombre de la organización.
Establece repo.name en el nombre de tu repositorio de copias de seguridad.
Opcional:* Ajusta repo.path si deseas una estructura de directorios específica para tus archivos guardados.

  1. Programación: Revisa y ajusta el nodo de n8n 'Schedule Trigger' para que coincida con la frecuencia de copia de seguridad deseada. La configuración existente se ejecuta diariamente a las 17:00 UTC.

Detalles del nodo

Schedule Trigger / Manual Trigger: Actúa como el disparador principal de n8n para iniciar el proceso de copia de seguridad, permitiendo una ejecución programada o instantánea.
Nodo de n8n de WordPress (Get All WP Posts): Recupera todas las entradas y páginas del sitio de WordPress utilizando la operación 'getAll'. Estos datos forman la carga útil para el resto del flujo de trabajo de n8n.
Nodo Execute Workflow de n8n: Esencial para iterar a través de las entradas de WordPress. Llama al mismo ID de flujo de trabajo en modo 'each' item, aislando la lógica de copia de seguridad de GitHub para cada entrada individual.
Nodo Set de n8n (Globals): Centraliza la configuración para el propietario y el nombre del repositorio de GitHub, y la estructura de la ruta de archivo, mejorando el mantenimiento de esta plantilla de n8n.
Nodo de n8n de GitHub (Get file data): Intenta recuperar el archivo de copia de seguridad JSON existente para un elemento específico de WordPress, utilizando el ID del elemento en el nombre del archivo. Fundamentalmente, utiliza continueOnFail: true para gestionar los casos en los que el archivo aún no existe.
Nodo Code de n8n (isDiffOrNew): Contiene la lógica central de control de versiones. Maneja la decodificación Base64 del archivo existente y estandariza las claves de los objetos JSON antes de realizar una comparación estricta de cadenas para determinar si el contenido es 'same', 'different' o 'new'.
Nodo Switch de n8n (Check Status): Dirige el flujo basándose en el github_status determinado por el nodo de n8n anterior, asegurando que se tome la acción correcta en GitHub (omitir, editar o crear).
Nodos de n8n de GitHub (Create new file / Edit existing file): Realizan las operaciones de archivo necesarias en el repositorio de GitHub, subiendo el JSON del contenido de WordPress convertido a cadena junto con un mensaje de commit relevante que indica el estado de la actualización.

Flujos de trabajo de n8n relacionados

Gratis

Nodos: 14 Nodos
Actualizado: Diciembre 26 2025
Ver todo
Creado por

Presentado*