Wie man csv Listen in Drupal 7 mit Feeds importiert
[!WARNING] Legacy Content: Dieser Artikel bezieht sich auf Drupal 7. Drupal 7 hat sein End-of-Life erreicht. Zum aktuellen Drupal 11 Migrations-Guide
Ein Klassiker in Drupal ist das Importieren von Daten aus CSV-Listen. Oftmals haben Kunden irgendwelche Excel-Listen, die importiert werden sollen. Mit Drupal kann man das recht simpel via Feeds lösen. Anbei findet ihr eine kurze Anleitung, wie man das macht.
In diesem Beispiel importieren wir eine CSV-Liste, die Domain-Namen enthält, als NODES. Man könnte natürlich auch Taxonomien anlegen, das ist in diesem Fall aber nicht gewünscht.
Vorbereitung für dieses Tutorial
Du hast eine CSV-Liste, die du importieren willst, als UTF-8 gespeichert.
Du brauchst folgendes Modul: drupal.org/project/feeds Aktiviere die Feeds UI und Feeds.
Inhaltstyp anlegen
Lege einen neuen Inhaltstyp Namens “Domain” an, mit den Feldern, die auch in deiner CSV sind.
admin/structure/types/add
In meinem Fall sind in der CSV-Liste folgende Felder: (Das ist eine Domain-Liste mit Handles und so)
Domain;Ownerc;Adminc;Techc;Zonec;Created;Payable;Primary Nameserver;Secondary Nameserver;Registry status;Owner;DNSSEC;
Die lege ich mir also alle brav als Fields an, je nachdem was es ist als Zahl oder Text oder Datum usw. Benenne die Felder genauso wie die in der CSV-Liste, dann ist das Mapping (Zuordnung) später einfacher!
Feed Importer erstellen
Lege einen neuen Feed Importer an:
admin/structure/feeds
- Vergebe einen Namen
- Basic Settings so lassen
- Abrufer -> Change -> auf File Upload ändern
- Parser -> Change -> CSV Parser auswählen
- CSV Parser -> Einstellungen -> default delimiter auf dein Trennzeichen aus der CSV ändern, in diesem Fall ein
;(No Header checkbox leer lassen) - Processor so lassen (Node Processor)
- Node Processor -> Einstellungen -> Inhaltstyp -> Dort deinen neuen Inhaltstyp “Domain” nehmen
- Mapping:
- Source -> Domain -> Target -> Title (unique)
- Source -> Ownerc -> Target -> Ownerc
- usw. bis alle Felder gemappt sind
- Speichern!
So, hier sind wir fertig.
Daten importieren:
Dann gehen wir auf /import und nehmen unseren neuen Feed Importer, wählen die CSV-Liste aus und starten das Ganze!
Und siehe da: Die CSV wird importiert!
Zur Ausgabe kannst du später dann das Modul Views benutzen (werde ich jetzt nicht weiter drauf eingehen, das wird überall schon genug erklärt): drupal.org/project/views
Brauchst du Hilfe bei deiner Drupal-Migration?
Möchtest du deine alten Drupal 7 Daten sicher nach Drupal 11 migrieren? Ich unterstütze dich gerne dabei. Jetzt Kontakt aufnehmen
Häufig gestellte Fragen (FAQ)
Warum muss meine CSV-Datei als UTF-8 gespeichert sein?
Was ist der Unterschied zwischen Abrufer, Parser und Processor beim Feeds-Modul?
Wie mappe ich CSV-Spalten auf Drupal-Felder?
Kann ich mit Feeds auch Taxonomien statt Nodes importieren?
Was passiert, wenn ich den gleichen CSV-Import nochmal ausführe?
Das könnte Sie auch interessieren
Drush: Alle Module deaktivieren
Wie man mit Drush schnell alle Module in Drupal deaktiviert - nützlich für Debugging und Wartung
Howto Migration from Drupal 6 to Drupal 7
You need drush version 6 installed, version 7 and 8 won't work
Drush alle Module deaktivieren
So kann man alle Module die nicht Core sind auf einen Schlag deaktivieren z.B. sinnvoll wenn man ein Core update machen...