Cómo usar los módulos Feeds y Feeds Tamper de Drupal para importar fácilmente datos CSV
El módulo Feeds en Drupal 9 es una herramienta potente para importar datos externos a tu sitio web Drupal. Soporta una variedad de formatos, incluyendo CSV, XML y JSON, y puede importar contenido a nodos, taxonomías y otras entidades en tu sitio Drupal. Para mejorar el proceso de importación, puedes usar el módulo Feeds Tamper, que te permite modificar los datos antes de que se guarden. Este tutorial te guiará a través del proceso de uso del módulo Feeds junto con Feeds Tamper para importar datos de un archivo CSV.
- Módulos requeridos:
- Instala y habilita los siguientes módulos:
- Crear un tipo de contenido:
- Si aún no tienes uno, crea un tipo de contenido para los datos que deseas importar del archivo CSV.

- Configurar un Importador de Feeds:
- Ve a
Estructura > Tipos de feeds
- Haz clic en
Añadir tipo de feed
- Introduce un nombre y una descripción para tu importador
- Ve a


- Configurar el Fetcher:
- Haz clic en el menú desplegable “Fetcher” y elige cómo deseas obtener el archivo. Para este tutorial, usa
Subir archivo
para subir manualmente el archivo CSV. Consulta las imágenes del Fetcher a. y b. a continuación.
- Haz clic en el menú desplegable “Fetcher” y elige cómo deseas obtener el archivo. Para este tutorial, usa


- Configurar el Parser:
- Haz clic en el menú desplegable “Parser”, elige
CSV
, y configura los ajustes apropiados de CSV, como el delimitador, Sin encabezados. La configuración por defecto funcionará para la mayoría de los casos de uso. Consulta las imágenes a continuación.
- Haz clic en el menú desplegable “Parser”, elige


- Configurar el Processor: Haz clic en el menú desplegable “Processor” y elige Node. Luego, haz clic en el menú desplegable “Content Type” y elige el tipo de contenido de destino, y configura ajustes adicionales como autor e idioma por defecto. El menú desplegable Processor te permite elegir el tipo de entidad que se creará al importar datos. Consulta las imágenes a continuación.



Idioma: Esta configuración te permite seleccionar el idioma para el contenido importado.
Actualizar elementos de contenido existentes: Esta configuración determina cómo se manejan los elementos de contenido existentes cuando se importan nuevos datos. Puedes elegir actualizar los elementos de contenido existentes, no actualizarlos o reemplazarlos por completo. El módulo utilizará las asignaciones únicas que hayas configurado para determinar qué elementos de contenido se consideran “existentes” y deben actualizarse o reemplazarse.
Elementos importados previamente: Esta configuración te permite elegir qué hacer con los elementos que se importaron previamente pero que ya no están presentes en el feed. Puedes elegir conservarlos o tomar alguna otra acción.
Expirar elementos de contenido: Esta configuración te permite especificar cuándo se deben eliminar los elementos de contenido. Puedes elegir no eliminarlos nunca o establecer un período de tiempo específico después del cual se eliminarán.
Propietario: Esta configuración te permite especificar el propietario del contenido importado. Puedes elegir usar el autor del feed como propietario o seleccionar un usuario específico. Si dejas este campo en blanco, el propietario se establecerá como Anónimo.
- Haz clic en Guardar y añadir asignaciones
- Asignar los campos CSV de origen a los campos del tipo de contenido de destino:
- Haz clic en la pestaña Asignación: Esto te llevará a la página de configuración de asignación donde puedes asignar datos de origen a campos de destino.
- Asigna las columnas CSV de origen a los campos del tipo de contenido de destino haciendo clic en Seleccionar un destino: Esto te permitirá seleccionar el campo de Drupal de destino al que deseas asignar los datos. Luego, en la columna “Origen”, selecciona Nuevo Origen CSV e introduce el nombre de la columna de tu archivo CSV que contiene los datos que deseas asignar al campo de destino seleccionado.
- Opcionalmente, configura campos únicos para evitar importaciones duplicadas: Esto te permite especificar qué campos se deben utilizar para determinar si un elemento importado es un duplicado de un elemento existente. Si se encuentra un duplicado, el módulo se puede configurar para actualizar o reemplazar el elemento existente.
- Ajusta otras configuraciones como el manejo del idioma: Esto te permite configurar ajustes adicionales para tu importador, como cómo se debe manejar el idioma.
- Haz clic en Guardar: Esto guardará tu asignación y otras configuraciones.

- Importar los datos usando el importador de Feeds:
- Ve a
Contenido > Importadores de Feeds
- Haz clic en
Importar
para el importador que creaste previamente - Sube tu archivo CSV (si configuraste la subida de archivos como tu fetcher)
- Haz clic en
Importar
- El contenido importado debería aparecer ahora como nodos del tipo de contenido de destino dentro de tu sitio Drupal en
/admin/content
- Ve a
Usa Feeds Tamper para manipular los datos importados
El módulo Feeds Tamper es un módulo contrib para el módulo Feeds de Drupal que te permite modificar los datos antes de que se importen. Proporciona una interfaz de usuario para añadir plugins de “tamper” a los campos asignados individuales de tu importador de Feeds, los cuales pueden realizar diversas tareas de manipulación de datos como dividir, combinar o reescribir datos.
- Confirma que el módulo Feeds Tamper está habilitado.
- Ve a la página de configuración de tu importador de feeds: Navega a la página de configuración del importador de feeds que deseas usar con el módulo Feeds Tamper. Puedes hacer esto yendo a la página “Estructura”, luego haciendo clic en “Feeds” y seleccionando el importador que deseas configurar.
- Haz clic en la pestaña “Tamper”: En la página de configuración de tu importador de feeds, haz clic en la pestaña “Tamper” para acceder a la configuración de tamper.
- Añade plugins de tamper a los campos asignados: En la tabla de configuración de tamper, encuentra el campo asignado al que deseas añadir un plugin de tamper. En la columna “Plugin” para ese campo, haz clic en el botón “Añadir plugin”. Selecciona el plugin que deseas usar de la lista de plugins disponibles, luego configura sus ajustes según sea necesario.
- Guarda tus cambios: Una vez que hayas añadido y configurado todos los plugins de tamper que deseas usar, haz clic en el botón “Guardar” para guardar tus cambios.
- Repite estos pasos para todas las columnas de origen que desees modificar antes de almacenar los datos
Casos de uso del módulo Feeds Tamper
- Limpieza de datos: Puedes usar el módulo Feeds Tamper para limpiar datos antes de que se importen. Por ejemplo, puedes usar el plugin “Buscar y reemplazar” para reemplazar palabras o frases específicas en tus datos.
- Transformación de datos: Puedes usar el módulo Feeds Tamper para transformar datos antes de que se importen. Por ejemplo, puedes usar el plugin “Explode” para dividir un solo campo en múltiples valores, o el plugin “Implode” para combinar múltiples campos en un solo valor. El plugin “Explode” es útil al asignar múltiples campos separados por comas del archivo CSV a un campo de referencia de taxonomía.
- Filtrado de datos: Puedes usar el módulo Feeds Tamper para filtrar datos antes de que se importen. Por ejemplo, puedes usar el plugin “Filtro de palabras clave” para importar solo elementos que contengan palabras clave específicas.
- Reescritura de datos: Puedes usar el módulo Feeds Tamper para reescribir datos antes de que se importen. Por ejemplo, puedes usar el plugin “Rewrite” para cambiar el formato de fechas o números en tus datos, o el plugin “Pathauto” para generar automáticamente alias de URL para el contenido importado.
¡Y eso es todo! Has configurado con éxito el módulo Feeds en Drupal 9 para importar y manipular datos de un archivo CSV utilizando el módulo Feeds Tamper.