Comment utiliser les modules Feeds et Feeds Tamper de Drupal pour importer facilement des données CSV
Le module Feeds dans Drupal 9 est un outil puissant pour importer des données externes sur votre site Drupal. Il prend en charge une variété de formats, y compris CSV, XML et JSON, et peut importer du contenu dans des nœuds, des taxonomies et d'autres entités de votre site Drupal. Pour améliorer le processus d'importation, vous pouvez utiliser le module Feeds Tamper, qui vous permet de modifier les données avant qu'elles ne soient enregistrées. Ce tutoriel vous guidera à travers le processus d'utilisation du module Feeds avec Feeds Tamper pour importer des données à partir d'un fichier CSV.
- Modules requis :
- Installez et activez les modules suivants :
- Créez un type de contenu :
- Si vous n'en avez pas déjà un, créez un type de contenu pour les données que vous souhaitez importer à partir du fichier CSV.

- Configurez un importateur Feeds :
- Allez dans
Structure > Types de flux
- Cliquez sur
Ajouter un type de flux
- Entrez un nom et une description pour votre importateur
- Allez dans


- Configurez le Fetcher :
- Cliquez sur le menu déroulant « Fetcher » et choisissez comment vous souhaitez récupérer le fichier. Pour ce tutoriel, utilisez
Télécharger le fichier
pour télécharger manuellement le fichier CSV. Reportez-vous aux images a. et b. du Fetcher ci-dessous.
- Cliquez sur le menu déroulant « Fetcher » et choisissez comment vous souhaitez récupérer le fichier. Pour ce tutoriel, utilisez


- Configurez le Parser :
- Cliquez sur le menu déroulant « Parser », choisissez
CSV
, et configurez les paramètres CSV appropriés, tels que le délimiteur, Pas d'en-têtes. Les paramètres par défaut fonctionneront pour la plupart des cas d'utilisation. Reportez-vous aux images ci-dessous.
- Cliquez sur le menu déroulant « Parser », choisissez


- Configurez le Processor : Cliquez sur le menu déroulant « Processor » et choisissez Node. Ensuite, cliquez sur le menu déroulant « Content Type » et choisissez le type de contenu cible, et configurez des paramètres supplémentaires comme l'auteur et la langue par défaut. Le menu déroulant Processor vous permet de choisir le type d'entité qui sera créé lors de l'importation des données. Reportez-vous aux images ci-dessous.



Langue : Ce paramètre vous permet de sélectionner la langue du contenu importé.
Mettre à jour les éléments de contenu existants : Ce paramètre détermine comment les éléments de contenu existants sont gérés lorsque de nouvelles données sont importées. Vous pouvez choisir de mettre à jour les éléments de contenu existants, de ne pas les mettre à jour ou de les remplacer entièrement. Le module utilisera les mappages uniques que vous avez configurés pour déterminer quels éléments de contenu sont considérés comme « existants » et doivent être mis à jour ou remplacés.
Éléments précédemment importés : Ce paramètre vous permet de choisir quoi faire avec les éléments qui ont été précédemment importés mais qui ne sont plus présents dans le flux. Vous pouvez choisir de les conserver ou d'effectuer une autre action.
Expiration des éléments de contenu : Ce paramètre vous permet de spécifier quand les éléments de contenu doivent être supprimés. Vous pouvez choisir de ne jamais les supprimer ou de définir une période spécifique après laquelle ils seront supprimés.
Propriétaire : Ce paramètre vous permet de spécifier le propriétaire du contenu importé. Vous pouvez choisir d'utiliser l'auteur du flux comme propriétaire ou de sélectionner un utilisateur spécifique. Si vous laissez ce champ vide, le propriétaire sera défini comme Anonyme.
- Cliquez sur Enregistrer et ajouter les mappages
- Mappez les champs CSV source aux champs de type de contenu cible :
- Cliquez sur l'onglet Mappage : Cela vous mènera à la page de configuration du mappage où vous pouvez mapper les données source aux champs cibles.
- Mappez les colonnes CSV source aux champs de type de contenu cible en cliquant sur Sélectionner une cible : Cela vous permettra de sélectionner le champ Drupal cible auquel vous souhaitez mapper les données. Ensuite, dans la colonne « Source », sélectionnez Nouvelle source CSV et entrez le nom de la colonne de votre fichier CSV qui contient les données que vous souhaitez mapper au champ cible sélectionné.
- Facultativement, configurez des champs uniques pour éviter les importations en double : Cela vous permet de spécifier quels champs doivent être utilisés pour déterminer si un élément importé est un doublon d'un élément existant. Si un doublon est trouvé, le module peut être configuré pour mettre à jour ou remplacer l'élément existant.
- Ajustez d'autres configurations comme la gestion des langues : Cela vous permet de configurer des paramètres supplémentaires pour votre importateur, tels que la manière dont la langue doit être gérée.
- Cliquez sur Enregistrer : Cela enregistrera votre mappage et les autres paramètres de configuration.

- Importez les données à l'aide de l'importateur Feeds :
- Allez dans
Contenu > Importateurs Feeds
- Cliquez sur
Importer
pour l'importateur que vous avez créé précédemment - Téléchargez votre fichier CSV (si vous avez configuré le téléchargement de fichier comme fetcher)
- Cliquez sur
Importer
- Le contenu importé devrait maintenant apparaître sous forme de nœuds du type de contenu cible sur votre site Drupal, dans
/admin/content
- Allez dans
Utilisez Feeds Tamper pour manipuler les données importées
Le module Feeds Tamper est un module contrib pour le module Feeds de Drupal qui vous permet de modifier les données avant leur importation. Il fournit une interface utilisateur pour ajouter des plugins « tamper » aux champs mappés individuels de votre importateur Feeds, qui peuvent effectuer diverses tâches de manipulation de données telles que la division, la combinaison ou la réécriture de données.
- Confirmez que le module Feeds Tamper est activé.
- Accédez à la page de configuration de votre importateur de flux : Naviguez vers la page de configuration de l'importateur de flux que vous souhaitez utiliser avec le module Feeds Tamper. Vous pouvez le faire en allant sur la page « Structure », puis en cliquant sur « Feeds » et en sélectionnant l'importateur que vous souhaitez configurer.
- Cliquez sur l'onglet « Tamper » : Sur la page de configuration de votre importateur de flux, cliquez sur l'onglet « Tamper » pour accéder aux paramètres de tamper.
- Ajoutez des plugins tamper aux champs mappés : Dans le tableau des paramètres de tamper, trouvez le champ mappé auquel vous souhaitez ajouter un plugin tamper. Dans la colonne « Plugin » pour ce champ, cliquez sur le bouton « Ajouter un plugin ». Sélectionnez le plugin que vous souhaitez utiliser dans la liste des plugins disponibles, puis configurez ses paramètres selon vos besoins.
- Enregistrez vos modifications : Une fois que vous avez ajouté et configuré tous les plugins tamper que vous souhaitez utiliser, cliquez sur le bouton « Enregistrer » pour enregistrer vos modifications.
- Répétez ces étapes pour toutes les colonnes source que vous souhaitez modifier avant de stocker les données
Cas d'utilisation du module Feeds tamper
- Nettoyage des données : Vous pouvez utiliser le module Feeds Tamper pour nettoyer les données avant leur importation. Par exemple, vous pouvez utiliser le plugin « Rechercher et remplacer » pour remplacer des mots ou des phrases spécifiques dans vos données.
- Transformation des données : Vous pouvez utiliser le module Feeds Tamper pour transformer les données avant leur importation. Par exemple, vous pouvez utiliser le plugin « Explode » pour diviser un seul champ en plusieurs valeurs, ou le plugin « Implode » pour combiner plusieurs champs en une seule valeur. Le plugin « Explode » est utile lors du mappage de plusieurs champs séparés par des virgules du fichier CSV à un champ de référence de taxonomie.
- Filtrage des données : Vous pouvez utiliser le module Feeds Tamper pour filtrer les données avant leur importation. Par exemple, vous pouvez utiliser le plugin « Filtre par mot-clé » pour importer uniquement les éléments qui contiennent des mots-clés spécifiques.
- Réécriture des données : Vous pouvez utiliser le module Feeds Tamper pour réécrire les données avant leur importation. Par exemple, vous pouvez utiliser le plugin « Rewrite » pour modifier le format des dates ou des nombres dans vos données, ou le plugin « Pathauto » pour générer automatiquement des alias d'URL pour le contenu importé.
Et voilà ! Vous avez configuré avec succès le module Feeds dans Drupal 9 pour importer et manipuler des données à partir d'un fichier CSV en utilisant le module Feeds Tamper.