Sonderfall: Versionsabhängigen Post Type anlegen

Für einen versionabhängigen Inhaltstypen muss ein Child und ein Parent angelegt und beide miteinander verknüpft werden.

Anlegen eines neuen versionsabhängigen Inhaltstypen im Überblick

  1. Inhaltstypen Child anlegen – siehe: einen Post Type anlegen
  2. Feldgruppe zum Child anlegen – siehe: Field Groups anlegen und bearbeiten
  3. Inhaltstypen Parent anlegen
  4. Feldgruppe zum Parent anlegen
  5. Factory in das OES-Datenmodell importieren – siehe: das OES Factory Datenmodell übernehmen
  6. Verknüpfung der beiden Inhaltstypen Child und Parent über das Schema zu einem Containerobjekt des Adminmenüs
  7. In den Factory Modus wechseln
  8. Einzelne Inhaltytspen ausblenden
  9. Factory in das OES-Datenmodell importieren
  10. Permalinks aktualisieren – siehe: Permalinks anpassen

Inhaltstypen Parent anlegen

Nachdem der Inhaltstyp Child mit der Feldgruppe angelegt wurde, wird jetzt der Parent erstellt.

  • ACF und den Reiter „Inhaltstypen“ öffnen
  • mit +Add New einen neuen Inhaltstypen anlegen

Folgende Felder werden hier definiert:

  • Beschriftung (Plural): Bezeichnung des Objekttyps im Plural – wie die Child-Version – , z. B. „Contributions Parents“
  • Beschriftung (Einzahl): Bezeichnung des Objekttyps im Singular, z. B. „Contribution Parent“
  • Inhaltstyp-Schlüssel: sollte Projektkürzel (Project key) enthalten, für eine leichtere Zuordnung, und den Inhaltstyp – wie die Child-Version aber gefolgt von _p für Parent, z. B. hier „demo_contribution_p“
  • Taxonomien: Auswahl einer im Projekt angelegten Taxonomie aus einem Dropdownmenü, hier „keyword“
  • Öffentlich: für die Sichtbarkeit des Objekts in der linken Menüleiste der Redaktionsumgebung unbedingt „aktivieren“


Für zusätzliche Einstellungen muss „Erweiterte Einstellungen“ aktiviert und in den einzelnen Reitern die benötigten Anpassungen vorgenommen werden.

Reiter: Allgemein

Der Inhaltstyp Contribution Parents braucht nur:

  • einen Title den Rest deaktivieren
  • Alle anderen Reiter: bleiben so
  • Mit „Änderungen speichern“ bestätigen

Im Adminmenü links werden die zwei neuen Inhaltstypen „Contribution Parents“ und „Contributions“ nun angezeigt. Im nächsten Schritt sollen sie miteinander verknüpft werden. Dies erfolgt im OES Settings/Schema.

  • OES Settings Schema öffnen

Da die beiden neuen Inhaltstypen bisher nur als ACF-Objekte in der Factory enthalten sind und noch nicht im OES Datenmodell, werden sie im Schema nicht angezeigt.

Das Factory Datenmodell muss zunächst in das OES Datenmodell importiert werden.

  • OES Tools/Data Model/Factory öffnen und Datenmodell importieren – siehe: das OES Factory Datenmodell übernehmen
  • OES Settings/Schema öffnen: beide Objekte sind enthalten, da sie noch keinem Type zugeordnet wurden, erscheinen sie unter [Default]

Tipp: Für eine korrekte Verknüpfung der beiden Objekte empfiehlt es sich, im Schema bei bereits vorhandenen versionsabhängigen Typen im OES-Settings/Schema nachschauen, wie die Verknüpfung dort vorgenommen wurde und welcher Type hinterlegt ist.

  • z. B. Schema/Status/Articles öffnen
  • Reiter „General“ öffnen, dort hinterlegt ist:
    • TYPE: Content (muss vom Type „Content“ sein)
    • Versioning, Parent Object: Article Parents

Nun bei beiden neuen Objekte miteinander verknüpfen:

  • OES-Settings/Schema den Contributions (Child) öffnen
  • Reiter „General“:
    • Type: „Content“ auswählen
    • Änderungen speichern
      Hinweis: Nur wenn der TYPE Content ist und gespeichert wurde, erscheint das Versioning Field und man kann eine Verknüpfung anlegen.
    • Versioning, Parent Object: Contribution Parents
  • Änderungen mit „Speichern“ bestätigen

Ergebnis: Links im Adminmenü wurde ein Versions-Container für Contributions erstellt (erkennbar an den eckigen Klammern).

Nun den Conribution Parents mit dem Child verknüpfen:

  • OES-Settings/Schema den Contribution Parents (Parent) öffnen
  • Reiter „General“:
    • Type: „Internal Object“ auswählen (Internal Objects werden im Frontend nicht dargestellt.)
    • Versioning, Parent Object: Contribution (bereits konfiguriert, da vom Child übernommen)
  • Änderungen mit „Speichern“ bestätigen

  • Im Adminmenü auf den Container [Contributions] klicken, und prüfen, ob alle „üblichen“ Versionierungsreiter vorhanden sind.

Neben dem Container sind im Adminmenü jedoch noch die beiden Einzelobjekte enthalten (unterer Bereich), die jetzt noch ausgeblendet werden.

Dafür wieder in den Factory-Modus wechseln:

  • OES Tools/Data Model/Factory öffnen
  • Datenmodell mit „Import OES Data Model to Factory“ importieren
  • Im ACF auf Inhaltstypen/Contribution Parents klicken
  • Unter: Erweiterte Einstellungen/Sichtbarkeit: „Im Admin-Menü anzeigen“ deaktivieren
  • Änderungen speichern

Gleiches wird für den Inhaltstypen „Contribution“ wiederholt und die Änderungen gespeichert. Nun wird das Factory Datenmodell wieder in das OES-Datenmodell importiert.

  • OES Tools/Data Model/Factory öffnen
  • Datenmodell mit „Import Factory to OES Data Model“ importieren

Die Einzelobjekte sind nun nicht mehr im Adminmenü enthalten. Jetzt können Inhalte gepflegt und/oder die Darstellung in der Publikationsumgebung unter OES-Settings/Schema modifiziert werden.

Weitere Dokumentationen

Anleitungen:

Weitere Guides, wie etwa zu einzelnen Feldtypen, Bidirektionalität oder Conditional Logic finden Sie hier: https://www.advancedcustomfields.com/resources/#guides.

Citation

„Sonderfall: Versionsabhängigen Post Type anlegen“,Version 2.2. In: OES Demo. Published by Center for Digital Systems, Freie Universitu00e4t Berlin,