Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

Die eZDataType-API

Jede eZDataType-Methode, die ein Datentyp überschreibt, nach Zweck gruppiert - Registrierung, Bearbeitung, Speicherung, Klasseneinstellungen, Informationssammlung, Suche und Sortierung, Import, Pakete - mit den…

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/extension-development/part-8-reference/ezdatatype-api.md

On this page

This page is a translation. Read the English original

Die eZDataType-API

Teil 8, Referenz 16. Ein Datentyp ist eine Klasse, die eZDataType (kernel/classes/ezdatatype.php) erweitert und die Methoden überschreibt, die sie braucht. Diese Seite führt sie nach Zweck auf, mit den Signaturen der Basisklasse (übernehmen Sie sie genau: PHP 8 verweigert ein Überschreiben mit abweichender Signatur). Wie Sie einen bauen, steht in Datentypen, Speicherung, Validierung und Templates von Datentypen und in den Tutorials Ein Datentyp, von Hand und Mit RAD: ein Datentyp.

Registrierung

MethodeHinweise
public function __construct( $dataTypeString, $name, $properties = array() )rufen Sie ihn aus Ihrem Konstruktor mit Ihrer Datentyp-Zeichenkette und dem übersetzten Namen auf
static function register( $dataTypeString, $className )einmal am Ende der Datei aufrufen: eZDataType::register( 'mydatatype', 'myDataTypeType' );

Dazu content.ini [DataTypeSettings] ExtensionDirectories[] und AvailableDataTypes[].

Das Attribut eines Objekts bearbeiten

MethodeAufgerufen, wenn
initializeObjectAttribute( $objectAttribute, $currentVersion, $originalContentObjectAttribute )eine neue Version angelegt wird: Werte kopieren oder Vorgaben setzen
validateObjectAttributeHTTPInput( $http, $base, $objectAttribute )das Bearbeitungsformular abgeschickt wird; geben Sie eZInputValidator::STATE_ACCEPTED oder STATE_INVALID zurück
fetchObjectAttributeHTTPInput( $http, $base, $objectAttribute )nach der Validierung: den abgeschickten Wert in das Attribut übernehmen; geben Sie true zurück, wenn etwas gelesen wurde
customObjectAttributeHTTPAction( $http, $action, $objectAttribute, $parameters )eine eigene Schaltfläche Ihres Bearbeitungs-Templates gedrückt wurde

Die Namen der abgeschickten Felder folgen der Konvention des Kernels aus Basis, Datentyp-Zeichenkette, Feld und Attribut-ID: ezstring liest $base . '_ezstring_data_text_' . $contentObjectAttribute->attribute( 'id' ). Ihr Bearbeitungs-Template muss genau die Namen abschicken, die Ihre Klasse liest.

Speicherung und Inhalt

MethodeVerwendung
storeObjectAttribute( $objectAttribute )bevor die Attributzeile gespeichert wird
objectAttributeContent( $objectAttribute )was $attribute.content in Templates und attribute( 'content' ) in PHP ist
hasObjectAttributeContent( $contentObjectAttribute )ob das Attribut ausgefüllt ist
onPublish( $contentObjectAttribute, $contentObject, $publishedNodes )wenn die Version veröffentlicht wird
deleteStoredObjectAttribute( $objectAttribute, $version = null )bevor die gespeicherten Daten entfernt werden (löschen Sie Dateien, die Sie gespeichert haben)

Klasseneinstellungen

MethodeVerwendung
validateClassAttributeHTTPInput( $http, $base, $classAttribute )das Formular zum Bearbeiten der Klasse wird abgeschickt
fetchClassAttributeHTTPInput( $http, $base, $classAttribute )die Einstellungen auf Klassenebene lesen
storeClassAttribute( $classAttribute, $version )bevor das Klassenattribut gespeichert wird
classAttributeContent( $classAttribute )was $class_attribute.content ist

Informationssammlung

MethodeVerwendung
isInformationCollector()geben Sie true zurück, wenn das Attribut Eingaben von Besuchern sammeln kann
validateCollectionAttributeHTTPInput( $http, $base, $objectAttribute )die Eingabe eines Besuchers validieren
fetchCollectionAttributeHTTPInput( $collection, $collectionAttribute, $http, $base, $objectAttribute )sie speichern

Suche, Sortierung, Benennung

MethodeVerwendung
isIndexable()ob die Suchmaschine es indiziert
metaData( $contentObjectAttribute )der zu indizierende Text
sortKey( $objectAttribute ), sortKeyType()Wert und Typ ('int' oder 'string') zum Sortieren nach diesem Attribut
title( $objectAttribute, $name = null )der Text, der in Objektnamen verwendet wird

Import, Export, Pakete

MethodeVerwendung
toString( $objectAttribute ), fromString( $objectAttribute, $string )das Attribut als Zeichenkette, für Importe, Exporte und einige Werkzeuge
serializeContentClassAttribute( $classAttribute, $attributeNode, $attributeParametersNode ), unserializeContentClassAttribute( ... )die Klasseneinstellungen in einem Paket

Templates

Ohne seine Templates, die über die Design-Kette gefunden werden, zeichnet ein Datentyp nichts: content/datatype/view/<datatypestring>.tpl und content/datatype/edit/<datatypestring>.tpl, dazu class/datatype/view/ und class/datatype/edit/ für die Klasseneinstellungen. Die Erweiterung braucht design.ini [ExtensionSettings] DesignExtensions[], damit sie gefunden werden.

Verwandte Seiten

Werden Sie Exponential-Partner

Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x