Wie Sie programmgesteuert erstellen einer node in Drupal 8?

Ich bin der Gestaltung eines neuen Moduls in Drupal 8. Es ist ein langfristiges Projekt, das nicht an die öffentlichkeit gehen für ein paar Monate mindestens, also verwende ich es als ein Weg, um herauszufinden, was es neues gibt.

In diesem Modul, ich möchte in der Lage sein, die programmgesteuert erstellen von nodes. In Drupal 7 ist, würde ich dies tun, indem Sie die Objekte, dann Aufruf von "node_submit" und "node_save".

Diese Funktionen nicht mehr vorhanden, in Drupal 8. Stattdessen werden laut der Dokumentation "Module und Skripte können programmgesteuert senden Knoten mit der üblichen form-API ein Muster." Ich bin an einem Verlust. Was bedeutet das? Ich habe Form-API zum erstellen von Formularen in Drupal 7, aber ich bekomme nicht, was die docs sagen hier.

Was ich Suche zu tun, ist programmgesteuert erstellen Sie mindestens einen und möglicherweise mehrere neue Knoten, basierend auf Informationen, die nicht direkt aus einem user-form präsentiert. Ich muss in der Lage sein:

1) geben Sie den Inhaltstyp

2) Geben Sie den URL-Pfad

3) stellen Sie eine beliebige andere Variablen, die vorher behandelt wurde durch die jetzt veralteten node_object_prepare()

4) Begehen das neue node-Objekt

Ich würde lieber in der Lage sein, dies zu tun in einer unabhängigen, stark abstrahierte Funktion, die nicht an einen bestimmten block oder form.

So was bin ich?

  • Siehe entity_create()
  • entity_create() entfernt werden, in Drupal 9 nach Ihren link. Bessere Nutzung der Objekt-Art : Entity::create() oder Node::create() für einen Knoten.
  • Yep, das ist wahr. Sie waren nicht veraltet, wenn ich schrieb den Kommentar, obwohl, Sie waren neu und glänzend 😉
InformationsquelleAutor chapka | 2014-06-11
Schreibe einen Kommentar