-

Wie importiert man Produkt- oder Blog-Post-Daten in Drupal aus CSV-Dateien? Schritt für Schritt

In diesem Artikel zeige ich Ihnen, wie Sie Daten aus CSV-Dateien in Drupal importieren. Dies ist oft ein Schritt bei der Erstellung einer neuen Website, und die hier gezeigten Lösungen sind hilfreich beim Übertragen von Daten von einer altenCMS-Lösung zu einer neuen. Ich werde Ihnen auch demonstrieren, wie man eine solche Situation mit dem Feeds-Modul und seiner Erweiterung Feeds Tamper handhabt und Sie durch den Import von Daten mit drei Datentypen als Beispiele führen: Produkte, Benutzer und Blogbeiträge.

Sie werden sehen, wie einfach es ist, Inhalte in Drupal zu verschieben, indem Sie die Daten entsprechend zuordnen und wie Sie die Daten mit den verfügbaren Modulen einfach an Ihre Bedürfnisse anpassen können.
Ich ermutige Sie, den Artikel zu lesen oder die Episode der Serie „Nowoczesny Drupal“ anzuschauen (das Video ist auf Polnisch), in der ich Ihnen die Schritte einzeln zeige.

Drupal Feeds-Modul - was ist das und wie funktioniert es?

Das Feeds-Modul ermöglicht uns den Import von Daten aus verschiedenen Formaten wie CSV, JSON, XML und RSS. Es ermöglicht uns, große Datenmengen einfach in Drupal zu verschieben, was besonders nützlich ist, wenn wir von älteren Systemen migrieren oder Drupal mit externen Datenquellen integrieren.

In diesem Beitrag verwenden wir auch das Feeds Tamper-Modul, das die Fähigkeiten von Feeds erweitert, indem es uns erlaubt, die Daten, die wir in Drupal importieren, zu bearbeiten. Zum Beispiel können wir Felder aufteilen, unnötige Zeichen entfernen und Datenstrukturen ändern, was uns die volle Kontrolle über das Endergebnis der Daten im System gibt. Feeds Tamper ist ein wichtiges Werkzeug, wenn Daten inkonsistent sind oder eine zusätzliche Verarbeitung benötigen, bevor sie importiert werden können.

Zusammen bilden diese beiden Module - Feeds und Feeds Tamper - eine sehr flexible und robuste Lösung, die es einfach macht, mit Daten in Drupal zu arbeiten.

Das Feeds-Modul ermöglicht Ihnen das Importieren von Daten in Drupal aus verschiedenen Formaten, wie einer CSV-Datei.


Diese Module sind bereits auf meinem System installiert, also lassen Sie uns mit einem schrittweisen Demo des Importprozesses fortfahren und wie wir sie verwenden können.

Produkte aus einer CSV-Datei importieren

Wir haben unsere Beispiel-CSV-Datei, die Spalten mit folgenden Daten enthält:

  • Titel - Produktname,
  • Kategorie- Produktkategorie,
  • Beschreibung- Produktbeschreibung,
  • Tags - Tags, die dem Produkt zugeordnet sind,
  • Fotos- ID von Fotos, die wir zuvor in Drupal Media importiert haben.
     

Ein Beispiel für eine einfache CSV-Datei mit Produkten, die für den Datenimport nach Drupal vorbereitet wurden.


Nun, lassen Sie uns zu Drupal gehen. Ich werde Beispiele für dieDroopler-Distribution zeigen (sie hat bereits Inhaltstypen wie "Produkt", das einen Titel, ein Bild, Inhalt, Kategorien und Tags enthält).

Wenn wir das Feeds-Modul installiert haben, können wir im Menü unter Struktur den Feed-Typ finden und neue Feeds für uns selbst hinzufügen.

Konfiguration des Drupal Feeds-Moduls

  1. Wir gehen zum "Struktur" Tab und wählen "Feeds Typ."
  2. Wir fügen einen neuen Typ hinzu, "Feeds" und nennen ihn "Produkte."
  3. Wir richten den Fetcher ein, wo wir "Datenquelle" - "CSV" wählen und den Datentyp spezifizieren, den wir importieren möchten, nämlich "Node" und Inhaltstyp "Produkt."
  4. Wir konfigurieren den Parser sodass die Daten durch ein Komma getrennt werden.
  5. Wir richten den Prozessor ein, der die bestehenden Daten aktualisieren wird, wenn die Datei das nächste Mal importiert wird.
Hinzufügen eines Feed-Typs bei der Konfiguration des Feeds-Moduls in Drupal.


Wir speichern die Änderungen und gehen zur Zuordnung über.

Feldzuordnung für Produkte

Ein entscheidender Teil des Imports ist die Zuordnung der Felder aus der CSV-Datei zu den entsprechenden Feldern in Drupal. Dieser Prozess beinhaltet die Zuordnung von Daten aus CSV-Spalten zu spezifischen Feldern im Inhaltstyp, wie Titel, Kategorie, Inhalt, Tags oder Bilder.

Die Zuordnung der Felder für Produkte, die aus einer CSV-Datei in Drupal importiert werden, ist eine einfache Operation.


Hier haben wir eine Standardliste von Feldern, die uns das Modul aus einem gegebenen Inhaltstyp für ein Produkt zur Verfügung stellt. Wählen wir "Titel" aus.

In der Feldzuordnung zur Importierung von Produktdaten in Drupal muss ein Feld mit einem Titel enthalten sein.


Als Nächstes wählen wir die Quelle aus, d. h. eine Spalte aus der CSV mit dem Namen "Titel". Wir wählen, dass es einzigartig ist, damit wir Produkte daran erkennen und aktualisieren können (in der Zukunft können wir dies auf ID oder Produkt-ID ändern).

Ein Element der Feldzuordnung beim Produktimport ist die Auswahl der Quelle aus der CSV-Datei.


Dann wählen wir das Feld „Kategorie“ und ordnen eine Spalte mit dem Kategorienamen zu. Wir können sofort das Feld mit einem Verweis verwenden. Hier zeige ich das Beispiel "name."

Ein Formular in Drupal, das beim Zuordnen von Feldern gemäß einer CSV-Datei angezeigt wird.


Als nächstes können wir die Option Autocreate aktivieren, damit Drupal automatisch neue Kategorien erstellt, wenn sie im System nicht vorhanden sind.

Die folgenden Schritte sind das Setzen von Tags, Medien und Beschreibungen:

  1. Tags: Wir ordnen das "Tags"-Feld der Tags-Spalte in der CSV-Datei zu.

Wenn die Tags durch ein Semikolon getrennt sind, können wir das Feeds Tamper-Modul verwenden, um sie in separate Einträge zu teilen.

  1. Fotos: Wir ordnen das "Fotos"-Feld den entsprechenden Medien-IDs in Drupal zu.

Es ist wichtig, die Fotos vorher in das System zu importieren, da das Drupal Feeds-Modul Fotos basierend auf ihrer ID zuweist.

  1. Beschreibung: Wir ordnen das "Beschreibung"-Feld der entsprechenden Spalte zu, die den Inhalt der Produktbeschreibung enthält.
    Festlegen von Tags, Medien und Beschreibungen in Drupal, um Daten in einer CSV-Datei abzugleichen.


Daten importieren

Sobald wir die Felder zugeordnet haben, können wir mit dem Import der Daten fortfahren.

  1. Wir gehen zum "Inhalt" Tab -> "Feeds."
  2. Wir klicken auf "Einen neuen Kanal hinzufügen" und wählen den Feeds-Typ "Produkte."
  3. Wir wählen die CSV-Datei mit den Produktdaten aus und klicken auf "Importieren."
  4. Sobald es abgeschlossen ist, teilt Drupal uns die Anzahl der importierten Produkte mit. In diesem Beispiel erhielten wir die Information, dass zwei Produkte importiert wurden.

    Eine Nachricht in Drupal, die anzeigt, dass zwei Produkte korrekt aus einem CSV-Datenimport erstellt wurden.


Wenn Tags oder andere Daten falsch importiert wurden, können wir das Feeds Tamper-Modul verwenden, um die Daten zu manipulieren - zum Beispiel, um Tags basierend auf dem Trennzeichen zu trennen.

Feeds Tamper - wann lohnt sich der Einsatz?

In manchen Fällen erfordern Daten eine zusätzliche Verarbeitung, um korrekt in Drupal importiert zu werden. Hier wird das Feeds Tamper-Modul unverzichtbar, da es Ihnen erlaubt, die Daten vor dem Import zu modifizieren.

Um Feeds Tamper zu verwenden, gehen wir zum "Struktur" Tab, wählen dann unseren Feeds-Typ, zum Beispiel "Produkte". Hier können wir verschiedene Datenmanipulationsoptionen für einzelne Felder hinzufügen. Feeds Tamper bietet viele Werkzeuge, wie die Verwendung von regulären Ausdrücken (regex) oder der explode Funktion, die es uns ermöglicht, Daten basierend auf einem spezifischen Trennzeichen zu trennen.

Zum Beispiel können wir für das "Tags"-Feld, das in der CSV-Datei durch ein Semikolon getrennt ist, eine explodieren Operation hinzufügen, um die Tags in separate Einträge zu trennen. Für das "Fotos"-Feld, in dem Fotos durch ein Komma getrennt sind, legen wir die entsprechende Datenmanipulation fest, damit Drupal jedes Foto korrekt erkennen kann. Nachdem diese Vorgänge durchgeführt wurden, kehren wir zum Importprozess zurück und setzen ihn fort, wobei wir sicher sind, dass die Daten korrekt importiert und den entsprechenden Feldern zugeordnet werden.

Die Manipulation von Daten auf diese Weise ist äußerst nützlich, wenn die Daten komplex sind oder transformiert werden müssen, um in die Struktur von Drupal zu passen.

Benutzer aus einer CSV-Datei importieren

Nun, lassen Sie uns zum Import von Benutzern übergehen. Unsere CSV-Datei enthält Daten wie:

  • E-Mail - die E-Mail-Adresse des Benutzers,
  • Benutzername- Benutzeranmeldung,
  • Rolle- die dem Benutzer zugewiesene Rolle,
  • Status- ob der Benutzer im CMS aktiv ist oder nicht.

Wir gehen erneut zum "Struktur" Tab -> "Feeds Typ" und fügen einen neuen Importtyp mit dem Namen "Benutzer" hinzu. Wir wählen "Datenquelle - CSV" und Datentyp "Benutzer." In den Prozessoreinstellungen wählen wir "Bestehende Benutzer aktualisieren", um Duplikate zu vermeiden.

Die Schritte zum Importieren von Benutzerdaten aus einer CSV-Datei nach Drupal mit dem Feeds-Modul.


Wir werden bestehende Benutzer aktualisieren, also gehen wir zur Zuordnung über.

Feldzuordnung für Benutzer

Beim Importieren von Benutzern haben wir weniger Felder, die zugeordnet werden müssen:

  1. E-Mail: Wir ordnen eine E-Mail-Spalte dem Feld "E-Mail" in Drupal zu. Dieses Feld muss eindeutig sein, da jeder Benutzer eine eindeutige E-Mail-Adresse haben muss.
  2. Benutzername: Wir ordnen den Benutzernamen der entsprechenden Spalte zu.
  3. Rolle: Wir ordnen eine Rolle der Benutzerrollenspalte zu. Wir können wählen, ob wir die Rolle basierend auf einem Label oder einer ID zuweisen möchten.
  4. Status: Wir ordnen einen Status zu, der bestimmt, ob der Benutzer aktiv oder blockiert ist.
Der Prozess der Zuordnung von Feldern für Benutzer beim Importieren aus einer CSV-Datei in Drupal.


An diesem Punkt haben wir zwei "Feed-Typen": "Produkt" und "Benutzer". Wir kümmern uns um den Import der Benutzer.

Benutzer importieren

Wir gehen zum "Inhalt" Tab -> "Feeds." Wir fügen einen neuen Kanal für Benutzer hinzu, wählen die CSV-Datei und klicken auf "Importieren."

Hinzufügen eines neuen Benutzerfeeds in Drupal mithilfe des Feeds-Moduls zum Importieren.


Nachdem der Prozess abgeschlossen ist, überprüfen wir, ob die Benutzer mit den richtigen Rollen und Status korrekt hinzugefügt wurden.

Überprüfung, dass Benutzerdaten korrekt aus CSV ins Drupal-System hinzugefügt wurden.


Wie Sie sehen, ist das Importieren von Benutzern in das Content Management System einfach und kann schnell durchgeführt werden.

Blog-Beiträge aus einer CSV-Datei importieren

Das letzte Beispiel ist der Import von Blog-Inhalten. Wie bei Produkten und Benutzern verwenden wir eine CSV-Datei, die folgende Felder enthält:

  • Titel- wir ordnen den Titel des Blogs zu,
  • Teaser - wir geben eine Zusammenfassung des Inhalts ein,
  • Inhalt- wir ordnen den Inhalt dem entsprechenden Absatz in Drupal zu (volle HTML),
  • Fotos- wir ordnen Fotos basierend auf der ID aus der CSV zu,
  • Kategorie\-eine Kategorie basierend auf dem Namen hinzufügen, und das System erstellt automatisch neue Kategorien, wenn sie nicht vorhanden sind.

    Importieren des Inhalts eines Blogartikels in Drupal aus einer CSV-Datei mit den relevanten Spalten.


Konfigurieren des Drupal Feeds-Moduls für Blog-Beiträge

Unter"Struktur"->"Feeds-Typ" fügen wir einen neuen Importtyp hinzu, den wir "Blog-Beiträge" nennen.

Konfiguration des Drupal Feeds-Moduls für den Import von Blog-Artikeln aus einer CSV-Datei.


Dies ist ein Import von einer CSV-Datei in einen Knoten, der in Blog-Beiträge fällt.

Drupal-Einstellungsbildschirm, der den Import von Artikeln aus einer CSV-Datei in den entsprechenden Knoten zeigt.


Wie bei Produkten und Benutzern ordnen wir diese Felder zu, setzen dann die Daten und wählen die Blog-Kategorie. Dann verweisen wir nach Namen und neue Kategorien werden erstellt.

Speichern. Dann gehen wir dazu über, einen neuen Feed, einen neuen Kanal zu erstellen. Wir haben bereits die Blog-Beiträge.

Ganz am Ende wählen wir eine Datei für uns selbst aus und importieren sie. Wenn der Import abgeschlossen ist, sehen wir, dass die Blog-Beiträge korrekt importiert wurden, mit korrekt zugewiesenen Kategorien und Bildern.

Eine Nachricht in Drupal, die anzeigt, dass drei Blogartikel korrekt aus CSV importiert wurden.


Alle Elemente werden korrekt angezeigt; wir können auch in der Liste sehen, dass alles schön aussieht.

Die erstellte Website in Drupal mit importierten Blog-Beiträgen aus einer CSV-Datei mit dem Feeds-Modul.


Daten in Drupal importieren - Zusammenfassung

Das Feeds-Modul und die Feeds Tamper-Erweiterung sind umfassende Tools, die das Management großer Datenmengen erleichtern. Mit ihnen können wir den Prozess der Migration und des Imports von Inhalten automatisieren, was viel Zeit und Arbeit spart. Egal, ob wir Produkte, Benutzer oder Blog-Beiträge importieren, wir können den Prozess anpassen, indem wir Daten aus einer CSV-Datei den entsprechenden Feldern in Drupal zuordnen.

Wesentliche Schritte im Importprozess:

  • Konfigurieren des Feeds-Moduls: Bestimmen Sie die Datenquelle und den Inhaltstyp und richten Sie den Parser und Prozessor so ein, dass die Daten wie erforderlich verarbeitet werden.
  • Feldzuordnung: Zuordnen von Spalten aus der CSV-Datei zu den entsprechenden Feldern in Drupal, was eine genaue Darstellung der Datenstruktur erlaubt.
  • Datenmanipulation mit Feeds Tamper: Die Möglichkeit, Daten vor dem Import zu transformieren (z. B. Tags zu trennen oder Multimedia zu bearbeiten), was besonders nützlich für komplexere Datenformate ist.

Es ist wichtig zu beachten, dass das Feeds Tamper-Modul zusätzliche Kontrolle über importierte Daten ermöglicht, was besonders nützlich ist, wenn die Daten angepasst werden müssen - zum Beispiel, wenn Tags in einem einzigen Feld gespeichert sind oder Bilder durch Kommas getrennt sind.

Wenn Sie planen, Ihre Daten nach Drupal zu migrieren oder eine große Menge an Inhalten zu verwalten, sind das Feeds-Modul und seine Erweiterung unverzichtbare Tools, die Ihnen helfen, viele Prozesse zu automatisieren, Fehler zu vermeiden und wertvolle Zeit zu sparen. Darüber hinaus macht die Möglichkeit, bestehende Daten zu aktualisieren, den Prozess effizient und flexibel. Benötigen Sie weitere Unterstützung bei diesen Prozessen? Unsere Drupal-Agentur-Experten können Ihnen helfen, Ihre Arbeit mit diesem CMS zu optimieren.  

migrate Drupal 7 website Droptica