Zum Hauptinhalt springen

Inhaltstypen in das iCL Portal importieren

Nachdem Sie JSON-Dateien erstellt und in die Arbeitsmappe integriert haben, müssen Sie diese Inhaltstypen auch in das iCL Portal hochladen.

Das iCL Portal speichert alle erstellten, hochgeladenen und aktualisierten Daten, die vom iCL Filler übermittelt werden. Außerdem können Sie mit den entsprechenden Berechtigungen die Inhaltstypen und Inhaltselemente sehen und bearbeiten.

In jedem iCL Portal-Mandanten kann jede Inhaltstyp-ID nur einmal vorhanden sein, sodass Sie sie eindeutig halten müssen, indem Sie eine neue Guid für einen neuen Inhaltstyp erstellen. Sie können denselben Inhaltstyp in verschiedenen Tenants verwenden.

Hochladen von Inhaltstypen in das iCL Portal

Wenn Sie über Administrationsrechte verfügen, können Sie Inhaltstypen in das iCL Portal hochladen.

Um einen Inhaltstypen hochzuladen, navigieren Sie zu Einstellungen - Inhaltstypen.

Dort können Sie per Drag&Drop oder über die Schaltfläche "Hochladen" neue Inhaltstypen hinzufügen oder bestehende aktualisieren.

Neu hochgeladene Inhaltstypen werden mit einem Erstellungsdatum versehen.

Die Spalte 'Geändert' zeigt das Datum der letzten Aktualisierung dieses Inhaltstyps an.

Hinweis

Sie müssen den Browser-Cache leeren, um den neu hochgeladenen Inhaltstyp im Bereich Inhaltstypen tatsächlich zu sehen. Drücken Sie dazu CTRL + F5.

Fehler beim Hochladen eines Inhaltstyps

Es kann Gründe geben, warum der Upload eines Inhaltstyps fehlschlägt - hier ist eine Liste der häufigsten Probleme:

ProblemLösung
Syntaxfehler in der json-DateiKopieren Sie den Inhalt der JSON-Datei in einen JSON-Validator in Ihrem Browser, um zu sehen, ob die Syntax der Datei gültig ist. Oft fehlt eine schließende Klammer oder ein Semikolon, oder es ist falsch platziert.
TitelfeldDas Feld, das von titleFieldName verwendet wird, muss "isRequired": true sein und vom Typ Text sein.
Inhaltstyp-ReferenzWenn Sie eine Referenz auf einen anderen Inhaltstyp erstellen, benötigen Sie ein Feld vom "Typ": "ContentItem", das im Abschnitt "Referenz" angesprochen wird.

Ändern eines Inhaltstyps

Wenn Sie einen bestehenden Inhaltstyp aktualisieren möchten, hängt die Art der Aktualisierung stark von den Änderungen ab, die Sie vornehmen.

Wenn Sie nur neue Felder hinzufügen, neue Relationen erstellen, Titel oder einen titlefieldexpression ändern, können Sie dies tun, indem Sie den neueren CT im Abschnitt Inhaltstypen in den Einstellungen des iCL Portals hochladen.

Bestimmte Änderungen können zu einem möglichen Datenverlust führen und sind daher von der Benutzeroberfläche verboten. Für diese Änderungen müssen Sie die REST API verwenden. Weitere Einzelheiten darüber, welche Änderungen zu Datenverlusten führen können und wie Sie in diesen Fällen vorgehen, finden Sie in der Dokumentation zur Content Type API hier.

Was passiert, wenn ein Inhaltstyp geändert wird

Wenn ein Inhaltstyp geändert wird, wirkt sich dies nie direkt auf die Elemente dieses Typs aus. Sie teilt dem iCL-System lediglich mit, wie es Elemente dieses Typs in Zukunft behandeln soll.

Wenn Sie also z.B. einen titleFieldExpression zu einem Inhaltstyp hinzufügen, aktualisiert iCL nicht alle Elemente dieses Typs, um den neuen Titel zu verwenden. Vielmehr wird erst das nächste Mal, wenn Sie ein Element dieses Typs aktualisieren, der titleFieldExpression verwendet, um den neuen Titel zu "berechnen".

Dies gilt auch für jede andere Änderung:

  • Änderung eines Feldtyps - werden die Werte immer noch im alten Typ gespeichert, aber wenn sie gelesen werden, versucht das System, sie an Ort und Stelle umzuwandeln. Wenn dies nicht gelingt, wird das Feld gelöscht.
  • Entfernen eines Feldes - werden die Werte weiterhin gespeichert, aber beim Lesen/Speichern ignoriert. Der Wert des Feldes wird also erst beim nächsten Speichern gelöscht (so können Sie ein gelöschtes Feld wieder einfügen und die Werte auf magische Weise wiederherstellen, falls das Feld irrtümlich entfernt wurde).
  • Änderung des Attributs "builtInField " (z.B. um einen Feldwert von mon_identite auf ExternalId zu mappen) -
    wird beim nächsten Speichern eines Artikels der Wert des benutzerdefinierten Feldes mon_identite auch auf das Feld ExternalId angewendet.
Dies ist beabsichtigt

Jede Änderung des Inhaltstyps wirkt sich potenziell auf alle Artikel dieses Typs aus. Wir haben jedoch immer noch Benutzer im Einsatz, die unsere App verwenden und auch Inhaltselemente aktualisieren. Wir können also nicht einfach die Inhaltselemente im Hintergrund ändern, da dies möglicherweise zu Synchronisierungskonflikten und Datenverlust führen würde.