Wir aktualisieren unsere Site von D7 auf D8, deren Vokabular eine mehrstufige Eltern-Kind-Hierarchie enthält. Die Liste ist zu lang (ca. 5K-10K-Begriffe), um manuell importiert zu werden.
Wir haben versucht, migrate in D8 Core zu verwenden und es mit migrate_plus und migrate_tools zu erweitern . Diese funktionieren sehr gut, wenn es keine Termhierarchie gibt.
Wie können wir es zum Importieren von Begriffen mit Hierarchie zum Laufen bringen? Der Wert, den es für das übergeordnete Element akzeptiert, ist der Begriff id. Wenn wir den übergeordneten Namen übergeben (während wir ihn zum ersten Mal importieren), wird der Begriff auf Stammebene erstellt. Vermissen wir etwas? Wenn wir dies nicht nur mit diesen Modulen tun können, wie können wir diese Module erweitern? Referenzen wären auch sehr dankbar.
quelle
Antworten:
Es ist etwas spät, aber ich glaube, ich habe das gerade gelöst ...
In Ihrer Datei migrate.whatever.yml müssen Sie der übergeordneten Quelle ein Prozess-Plugin hinzufügen:
quelle
Wenn Sie
Taxonomy with Hierarchy
zusammen mit dem vorhandenen importieren möchten, gehen Sie wietid
folgt vor. Konfigurieren Sie Ihre Importkonfiguration wie folgtJetzt wird Ihre
csv
Datei so seinJetzt können Sie Ihre Taxonomie überprüfen. Das Ergebnis ist wie im Bild unten mit vorhanden
tid
.quelle
Eine alternative Lösung für das Migrationsmodul ist die Verwendung des Moduls " Term CSV Export Import", das den Import einer Liste von Begriffen mit übergeordneter Struktur unterstützt.
Beispielformat einer CSV-Datei:
quelle
Es gibt ein Modul, mit dem hierarchische Taxonomiebegriffe problemlos importiert werden können. Schauen Sie sich die Drupal 8-Version des Moduls an und es heißt Hierarchical Taxonomy Importer .
Dies kann Begriffe auf verschachtelten Ebenen aus einer CSV-Datei importieren. Hier ist der Link des Moduls.
https://www.drupal.org/project/hti
Es gibt keine Einschränkung für die Beziehungstiefe zwischen Eltern und Kindern.
quelle
Siehe diesen Patch: https://www.drupal.org/project/drupal/issues/2965938#comment-12587479
quelle
Ich war etwas enttäuscht von der Verwendung von Migrationsmodulen und begann schnell, meine eigenen Skripte zu verwenden. Unter einem Skript zum Importieren einer Taxonomie mit Hierarchie:
quelle
Für mich löst dies das Problem:
Quelle: https://api.drupal.org/api/drupal/core%21modules%21taxonomy%21migrations%21d7_taxonomy_term.yml/8.6.x
quelle