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

eZContentClass und ihre Attribute

Inhaltsklassen und ihre Attribute aus PHP lesen - fetchByIdentifier(), classIDByIdentifier(), dataMap(), fetchAttributeByIdentifier(), Datentyp und Inhalt - über Bezeichner, nicht über IDs.

Download as PDF

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

On this page

This page is a translation. Read the English original

eZContentClass und ihre Attribute

Teil 8, Referenz 8. Eine Inhaltsklasse (kernel/classes/ezcontentclass.php) beschreibt eine Art von Inhalt: ihren Bezeichner (article), ihren Namen und ihre Attribute, jedes ein eZContentClassAttribute (kernel/classes/ezcontentclassattribute.php) mit einem Bezeichner, einem Datentyp und Einstellungen. Builder legen Klassen in der Administration an (Inhaltsklassen für Builder); Erweiterungen lesen sie.

Bezeichner, nicht IDs

Die numerische ID einer Klasse unterscheidet sich zwischen Installationen, ihr Bezeichner nicht. Schreiben Sie Bezeichner in Code und Einstellungen, und schlagen Sie die ID nach, wenn Sie sie brauchen:

Methode (statisch)Gibt zurück
classIDByIdentifier( $identifier )die ID zu einem Bezeichner
classIdentifierByID( $id )den Bezeichner zu einer ID
fetchByIdentifier( $identifier, $asObject = true, ... )die Klasse
fetch( $id, $asObject = true, ... )die Klasse über ihre ID
fetchAllClasses( $asObject = true, $includeFilter = true, $groupList = false )alle Klassen
fetchList( ... )Klassen nach Bedingungen

Eine Klasse lesen

Methode oder AttributGibt zurück
attribute( 'identifier' ), attribute( 'id' )Bezeichner und ID
name( $languageLocale = false )den Namen
dataMap()die Attribute, nach Attributbezeichner geordnet
fetchAttributeByIdentifier( $identifier, $asObject = true )ein Attribut

Für jedes Klassenattribut:

Methode oder AttributGibt zurück
attribute( 'identifier' )z. B. title
attribute( 'data_type_string' )den Datentyp, z. B. ezstring
dataType()das Datentyp-Objekt
content()die Einstellungen des Datentyps auf Klassenebene (was classAttributeContent() des Datentyps zurückgibt)
attribute( 'is_required' ), attribute( 'is_searchable' )Kennzeichen
<?php
$class = eZContentClass::fetchByIdentifier( 'folder' );
if ( $class instanceof eZContentClass )
{
    foreach ( $class->dataMap() as $identifier => $classAttribute )
    {
        echo $identifier, ': ', $classAttribute->attribute( 'data_type_string' ), "\n";
    }
}

Nur lesend auf einer Demo-Installation ausgeführt, listete dies die sieben Attribute der Klasse folder auf.

Der Inhalt eines Klassenattributs ist der richtige Weg, die Einstellungen eines Datentyps zu lesen. Eine Datentyp-Methode wie classAttributeContent() statisch aufzurufen, ist unter PHP 8 ein fataler Fehler; fragen Sie stattdessen das Klassenattribut, wie es se7enxweb/sevenx_themes_media im Commit f7d93c0 getan hat (PHP-8-Fehler, die alten Code stoppen).

Klassen anlegen

Legen Sie Klassen nicht mit rohem SQL an. Verwenden Sie Pakete (Pakete (.ezpkg) und der Paketersteller), die Administration oder den Assistenten Content extension unter Setup > RAD, der eine Klasse als Installationsskript schreibt.

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