Anstatt sich ausschließlich auf die standardmäßigen TYPO3 Content Elements zu verlassen, können Teams benutzerdefinierte Elemente für Bereiche wie CTA-Boxen, Kartenraster, Slider, Code-Blöcke, Produkthighlights oder strukturierte Landingpage-Komponenten erstellen.
Um ein benutzerdefiniertes Content Element in TYPO3 zu erstellen, definieren Sie einen neuen CType, konfigurieren die erforderlichen TCA-Felder, fügen das Element zum Assistenten „Neues Inhaltselement“ hinzu, richten das Frontend-Rendering mit TypoScript und einem Fluid Template ein und können optional eine Backend-Vorschau oder einen DataProcessor für eine bessere Redakteurs-Erfahrung hinzufügen.
Was ist ein benutzerdefiniertes Content Element in TYPO3?
Ein benutzerdefiniertes TYPO3 Content Element ist ein wiederverwendbarer Inhaltsblock, der für eine bestimmte Website-Anforderung entwickelt wurde. Es kann benutzerdefinierte Felder, Backend-Einstellungen und ein Fluid Template für die Frontend-Ausgabe enthalten.
Redakteure sehen es im TYPO3 Backend unter Neues Inhaltselement erstellen, sobald es zum Assistenten für Inhaltselemente hinzugefügt wurde.
Typ | Bedeutung |
Content Element | Ein wiederverwendbarer Seitenblock, beispielsweise ein CTA, eine Karte oder ein Testimonial |
Plugin | Eine dynamische Funktion, beispielsweise Suche, Filter, Formulare oder Listen |
Template | Steuert, wie das Element im Frontend dargestellt wird |
Extension | Ein TYPO3-Paket, das Elemente, Plugins, Templates und Logik enthalten kann |
Benutzerdefinierte Content Elements helfen dabei, Inhalte strukturiert, wiederverwendbar und für Redakteure leichter verwaltbar zu halten.
Wie erstellt man ein benutzerdefiniertes TYPO3 Content Element?

Um ein benutzerdefiniertes TYPO3 Content Element zu erstellen, registrieren Sie einen neuen CType, konfigurieren die erforderlichen TCA-Felder, fügen das Element zum Assistenten „Neues Inhaltselement“ hinzu und definieren die Frontend-Ausgabe mit TypoScript und einem Fluid Template.
Sie können außerdem eine Backend-Vorschau für Redakteure hinzufügen und einen DataProcessor verwenden, wenn das Element vor dem Rendering eine zusätzliche Datenverarbeitung benötigt.
Benutzerdefinierte TYPO3 Elemente vs. Core-Elemente

TYPO3-Core-Elemente sind integrierte Content Elements, die häufige Anforderungen wie Text, Bilder, Medien, Tabellen und Standard-Layouts abdecken. Ein benutzerdefiniertes TYPO3 Content Element wird erstellt, wenn ein Projekt ein bestimmtes Layout, eine individuelle Feldstruktur oder eine Frontend-Ausgabe benötigt, die Core-Elemente nicht bereitstellen können.
Faktor | TYPO3 Core Element | TYPO3 benutzerdefiniertes Element |
Zweck | Standardmäßige Inhaltsanforderungen | Projektspezifische Inhalte |
Kontrolle für Redakteure | Grundlegend | Benutzerdefinierte Felder und Layout |
Frontend-Ausgabe | Vordefiniert | Vollständig kontrollierbar |
Beste Verwendung | Text, Bild, Medien | CTA-Blöcke, Karten, Slider, Produktblöcke |
Benutzerdefinierte Elemente sind besonders hilfreich, wenn Redakteure wiederholbare, strukturierte Inhaltsblöcke benötigen, anstatt dasselbe Layout auf jeder Seite manuell erstellen zu müssen.
Wann sollten Sie ein benutzerdefiniertes TYPO3 Content Element erstellen?
Erstellen Sie ein benutzerdefiniertes TYPO3 Content Element, wenn die Website einen wiederverwendbaren Bereich mit festgelegtem Design, klar definierten Feldern und kontrollierter Frontend-Ausgabe benötigt.
Ein benutzerdefiniertes Content Element ist sinnvoll, wenn:
- Sie wiederverwendbare Markenbereiche benötigen
- Redakteure strukturierte Felder benötigen
- Das Design eine strenge Kontrolle über das Frontend erfordert
- Sie unnötige Abhängigkeiten reduzieren möchten
- Sie eine bessere Inhaltskonsistenz über mehrere Seiten hinweg benötigen
- Sie eine benutzerdefinierte Backend-Vorschau für Redakteure wünschen
Erstellen Sie kein benutzerdefiniertes Content Element, wenn:
- Ein TYPO3-Core-Element den Bedarf bereits erfüllt
- Eine einfache Fluid Template-Überschreibung ausreichend ist
- Ein Plugin besser für dynamische Logik, Listen, Formulare, Filter oder komplexe Workflows geeignet ist
Core CType, Content Blocks oder Extension: Welche Methode sollten Sie verwenden?
TYPO3 bietet verschiedene Möglichkeiten, benutzerdefinierte Content Elements zu erstellen. Die richtige Methode hängt davon ab, wie viel Kontrolle, Flexibilität und Logik das Projekt benötigt.
Methode | Am besten geeignet für | Vorteile | Zu beachten |
Core CType-Methode | Vollständige Entwicklerkontrolle | Stabil, flexibel, Core-freundlich | Mehr manuelle Einrichtung |
Content Blocks | Schnellere strukturierte Elemente | Einfachere Konfiguration, moderner Workflow | Benötigt Content Blocks Extension |
Plugin / Extbase Extension | Dynamische Geschäftslogik | Ideal für Formulare, Listen, Workflows | Komplexere Umsetzung |
Drittanbieter-Tools | Schnelle Einrichtung | Schnell für einfache Projekte | Abhängigkeiten und Upgrade-Risiken |
Verwenden Sie die Core CType-Methode, wenn das Projekt vollständige Kontrolle über Felder, Rendering, Backend-Vorschau und langfristige Wartbarkeit benötigt.
Verwenden Sie Content Blocks, wenn Sie eine schnellere Möglichkeit benötigen, strukturierte Content Elements mit weniger manueller Konfiguration zu erstellen.
Verwenden Sie ein Plugin oder eine Extbase Extension, wenn die Funktion dynamische Logik, Datensätze, Filter, Formulare, Suche oder individuelle Workflows benötigt.
Voraussetzungen vor der Erstellung eines benutzerdefinierten TYPO3 Elements
Bevor Sie ein benutzerdefiniertes TYPO3 Content Element erstellen, stellen Sie sicher, dass das Projekt über die richtige Umgebung verfügt.
Sie sollten haben:
- Ein TYPO3 v12-, v13- oder v14-Projekt
- Ein Sitepackage oder eine benutzerdefinierte Extension
- Ein Composer-basiertes TYPO3-Setup
fluid_styled_contentinstalliert und konfiguriert- Zugriff auf TCA, PageTSconfig, TypoScript und Fluid Templates
- Grundkenntnisse in PHP und Fluid
- Eine lokale oder Staging-Umgebung für sichere Tests
Erstellen oder testen Sie benutzerdefinierte Content Elements nicht direkt auf einer Live-Website. Verwenden Sie zunächst eine lokale oder Staging-Umgebung und führen Sie die Bereitstellung erst nach Tests von Backend, Frontend, Cache-Verhalten und Redakteurs-Workflow durch.
Dateistruktur für ein benutzerdefiniertes TYPO3 Content Element
Eine klare TYPO3 benutzerdefinierte Element-Dateistruktur macht die Einrichtung einfacher zu entwickeln, zu testen und zu warten. Die meisten benutzerdefinierten Content Elements verwenden Dateien für CType-Registrierung, TCA-Felder, Wizard-Konfiguration, Frontend-Rendering und optionale Backend-Vorschau-Logik.
Datei / Ordner | Zweck |
| CType und Felder registrieren |
| Datenbankfelder hinzufügen |
| Wizard-Konfiguration hinzufügen |
| Frontend-Rendering definieren |
| Fluid Template hinzufügen |
| Optionalen DataProcessor hinzufügen |
| Backend-Vorschau oder Rendering-Logik hinzufügen |
Diese Struktur hält das benutzerdefinierte Element organisiert und erleichtert spätere Aktualisierungen.
Welche Felder und Faktoren gehören zu einem TYPO3 Content Type?
Ein TYPO3 Content Type enthält normalerweise die Einstellungen, die erforderlich sind, um das Element im Backend anzuzeigen, seine Felder zu speichern und es im Frontend darzustellen.
Zu den wichtigsten Bestandteilen gehören:
- CType-Key zur Identifizierung des benutzerdefinierten Elements
- Datenbankfelder zum Speichern benutzerdefinierter Werte
- TCA-Konfiguration für die Einrichtung der Backend-Felder
- Wizard-Eintrag zum Hinzufügen des Elements im Backend
- Backend-Vorschau für die Sichtbarkeit durch Redakteure
- TypoScript-Rendering für die Frontend-Ausgabe
- Fluid Template für das Layout des Elements
- Optionaler DataProcessor für zusätzliche Datenverarbeitung
- Sprachlabels für die Namen der Backend-Felder
- Icon-Identifier für das Icon des Content Elements
Diese Bestandteile arbeiten zusammen, um das benutzerdefinierte Content Element für Redakteure nutzbar zu machen und eine korrekte Darstellung auf der Website sicherzustellen.
Schritt für Schritt: Erstellen eines benutzerdefinierten TYPO3 Content Elements mit Core CType
Diese Methode gibt Entwicklern vollständige Kontrolle über die Einrichtung des Content Elements, einschließlich Backend-Feldern, Redakteurs-Vorschau, Frontend-Rendering und Datenverarbeitung. Sie folgt dem klassischen TYPO3 Core CType-Ansatz mit TCA, PageTSconfig, TypoScript und Fluid Template-Rendering.
1. Den CType-Key definieren
Beginnen Sie mit der Definition eines klaren und eindeutigen CType-Keys für das benutzerdefinierte Content Element. Dieser Key identifiziert das Element innerhalb von TYPO3.
Verwenden Sie einen kurzen, lesbaren und projektspezifischen Key.
Beispiel:
myextension_newcontentelement
Bewährte Verfahren:
- Verwenden Sie Kleinbuchstaben
- Vermeiden Sie Leerzeichen und Sonderzeichen
- Stellen Sie dem Key den Namen Ihrer Extension voran
- Halten Sie den Key aussagekräftig und leicht erkennbar
2. Das Icon registrieren

Registrieren Sie ein Icon für das benutzerdefinierte Content Element, damit Redakteure es im TYPO3-Backend leichter erkennen können.
// typo3conf/ext/myextension/ext_localconf.php
$iconRegistry = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(
\TYPO3\CMS\Core\Imaging\IconRegistry::class
);
$iconRegistry->registerIcon(
'my-icon-identifier',
\TYPO3\CMS\Core\Imaging\IconProvider\FontawesomeIconProvider::class,
['name' => 'external-link-square']
);
Der Icon-Identifier sollte mit dem Identifier übereinstimmen, der bei der Registrierung des Content Elements verwendet wird.
3. Das Element zum Type-Dropdown hinzufügen

Als Nächstes fügen Sie das benutzerdefinierte Content Element zum TYPO3 CType-Dropdown hinzu. Dadurch wird das Element im Backend als auswählbarer Content-Typ verfügbar.
// typo3conf/ext/myextension/Configuration/TCA/Overrides/tt_content.php
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem(
'tt_content',
'CType',
[
'LLL:EXT:myextension/Resources/Private/Language/Tca.xlf:myextension_newcontentelement',
'myextension_newcontentelement',
'my-icon-identifier',
],
'header',
'after'
);
Dieser Schritt registriert das Element lediglich als Content-Typ. Die Felder, das Rendering und der Wizard-Eintrag müssen weiterhin separat konfiguriert werden.
4. Datenbankfelder hinzufügen
Wenn das benutzerdefinierte Content Element ein eigenes Feld benötigt, fügen Sie es zu ext_tables.sql hinzu.
Beispiel:
CREATE TABLE tt_content (
code_language text DEFAULT '' NOT NULL
);
Verwenden Sie benutzerdefinierte Datenbankfelder nur dann, wenn die standardmäßigen tt_content-Felder nicht ausreichen.
5. TCA-Felder konfigurieren
TCA steuert, wie Felder im TYPO3-Backend angezeigt werden und sich verhalten.
Beispiel:
$additionalColumns = [
'code_language' => [
'label' => 'LLL:EXT:codeblock/Resources/Private/Language/locallang_db.xlf:tt_content.code_language',
'config' => [
'type' => 'select',
'default' => '',
'itemsProcFunc' => 'NITSAN\\Codeblock\\DataProvider\\CodeLanguages->getAll',
'renderType' => 'selectSingle',
],
],
];
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns(
'tt_content',
$additionalColumns
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes(
'tt_content',
'code_language',
'codeblock',
'before:bodytext'
);
Für TYPO3 v13.3 und neuer sollten Sie vermeiden, unnötige Systemfelder für tt_content Content Types zu wiederholen. TYPO3 verwaltet bereits mehrere Standardfelder automatisch.
6. Das Element zum Assistenten „Neues Inhaltselement“ hinzufügen

Um Redakteuren die Auswahl des Elements über den Assistenten „Neues Inhaltselement“ zu ermöglichen, fügen Sie PageTSconfig hinzu.
mod.wizards.newContentElement {
wizardItems {
common.elements.codeblock {
title = LLL:EXT:codeblock/Resources/Private/Language/locallang_db.xlf:tt_content.CType
description = LLL:EXT:codeblock/Resources/Private/Language/locallang_db.xlf:tt_content.wizard.description
tt_content_defValues.CType = codeblock
iconIdentifier = content-codeblock
}
common.show := addToList(codeblock)
}
}
Dadurch wird das benutzerdefinierte Content Element für Redakteure leichter auffindbar und nutzbar.
7. Backend-Vorschau hinzufügen

Eine Backend-Vorschau ist optional, hilft Redakteuren jedoch dabei, den Inhalt eines benutzerdefinierten Content Elements zu verstehen, ohne es öffnen zu müssen.
Es gibt zwei gängige Möglichkeiten, eine Vorschau hinzuzufügen:
Fluid Preview
Verwenden Sie ein Fluid Preview Template über PageTSconfig:
mod.web_layout.tt_content.preview.codeblock = EXT:codeblock/Resources/Private/Templates/Preview/Codeblock.html
Dies ist nützlich für einfache Vorschauen, die auf gespeicherten Feldwerten basieren.
Benutzerdefinierter Preview Renderer
Für mehr Kontrolle können Sie einen benutzerdefinierten Preview Renderer verwenden.
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['cms/layout/class.tx_cms_layout.php']['tt_content_drawItem']['content-codeblock']
= \Vendor\YourExtensionKey\Hooks\PageLayoutView\NewContentElementPreviewRenderer::class;
Verwenden Sie einen benutzerdefinierten Renderer, wenn die Vorschau spezielle Logik, formatierte Ausgaben oder eine individuelle Backend-Darstellung benötigt.
8. Einen DataProcessor hinzufügen
Ein DataProcessor ist hilfreich, wenn das Content Element vor dem Rendering eine zusätzliche Datenverarbeitung benötigt.
Verwenden Sie ihn für:
- Dateien
- Verknüpfte Datensätze
- Externe Daten
- Array-Transformation
- Syntax-Highlighting
- Verarbeitung benutzerdefinierter Felder
Beispiel:
public function process(
ContentObjectRenderer $cObj,
array $contentObjectConfiguration,
array $processorConfiguration,
array $processedData
) {
$fieldName = $processorConfiguration['field'];
$targetVariableName = $cObj->stdWrapValue('as', $processorConfiguration, 'bodytext_formatted');
$highlight = GeneralUtility::makeInstance(Highlighter::class);
if (!$processedData['data']['code_language']) {
$languages = $highlight->listLanguages();
$highlight->setAutodetectLanguages($languages);
$highlighted = $highlight->highlightAuto($processedData['data'][$fieldName]);
} else {
$highlighted = $highlight->highlight(
$processedData['data']['code_language'],
$processedData['data'][$fieldName]
);
}
$processedData[$targetVariableName]['code'] = $highlighted->value;
$processedData[$targetVariableName]['language'] = $highlighted->language;
return $processedData;
}
Ein DataProcessor hält die Logik außerhalb des Fluid Templates und sorgt für ein saubereres Rendering.
9. TypoScript-Konfiguration hinzufügen
TYPO3 benötigt eine TypoScript-Konfiguration, um das benutzerdefinierte Content Element im Frontend darzustellen.
tt_content.codeblock =< lib.contentElement
tt_content.codeblock {
templateName = Codeblock
templateRootPaths.0 = EXT:codeblock/Resources/Private/Templates
dataProcessing.1567071612 = NITSAN\Codeblock\DataProcessing\HighlightProcessor
dataProcessing.1567071612 {
field = bodytext
as = bodytext_formatted
}
}
Dies verbindet den benutzerdefinierten CType mit seinem Fluid Template und dem optionalen DataProcessor.
10. Fluid Template hinzufügen
Erstellen Sie das Fluid Template, das die Frontend-Ausgabe steuert.
Beispiel:
<f:layout name="Default" />
<f:section name="Main">
<pre>
<code class="hljs {bodytext_formatted.language}">
{bodytext_formatted.code -> f:format.raw()}
</code>
</pre>
</f:section>
Verwenden Sie eine rohe Ausgabe nur dann, wenn der Inhalt vertrauenswürdig oder ordnungsgemäß bereinigt wurde. Bei normalen Redakteurs-Eingaben sollte die Ausgabe standardmäßig escaped werden, um Sicherheitsprobleme zu vermeiden.
Moderne Option: Benutzerdefinierte Elemente mit TYPO3 Content Blocks erstellen
Kurze Antwort: Content Blocks sind eine vereinfachte Möglichkeit, strukturierte Content Elements in TYPO3 zu definieren.
Anstatt jeden Bestandteil manuell mit TCA, PageTSconfig, TypoScript und Backend-Konfiguration einzurichten, ermöglichen Content Blocks Entwicklern, Content Elements über eine kompaktere Struktur zu definieren. Ein typischer Content Block enthält eine config.yaml-Datei, ein Fluid Template, optionale Assets und Sprachlabels.
Content Blocks sind besonders geeignet, wenn Sie schnell strukturierte Elemente wie Hero-Bereiche, CTA-Blöcke, Kartenlayouts, Slider, Teaser oder wiederverwendbare Landingpage-Abschnitte erstellen möchten. Sie sind besonders hilfreich in TYPO3 v13- und v14-Projekten, bei denen Teams einen saubereren und moderneren Workflow für benutzerdefinierte Content Elements wünschen.
Verwenden Sie die Core CType-Methode, wenn das Projekt vollständige Kontrolle, komplexe TCA-Konfiguration, individuelle Verarbeitung oder langfristige Flexibilität auf niedriger Ebene benötigt. Verwenden Sie Content Blocks, wenn das Ziel darin besteht, strukturierte Content Elements schneller mit weniger manueller Konfiguration zu erstellen.
TYPO3 v14 Hinweise: Visual Editor und Redakteurs-Erfahrung
TYPO3 v14 legt einen stärkeren Fokus auf die Redakteurs-Erfahrung. Der Visual Editor unterstützt einfachen Text und Rich-Text-Bearbeitung, das Verschieben von Inhalten per Drag & Drop, hervorgehobene bearbeitbare Felder und eine berechtigungsbasierte Bearbeitung über TYPO3-APIs.
Dies ist für benutzerdefinierte Content Elements wichtig, da Templates nicht nur korrekt im Frontend dargestellt werden sollten. Sie müssen auch für Redakteure einfach verständlich und verwaltbar sein.
Bei der Erstellung benutzerdefinierter Elemente für TYPO3 v14 sollten Sie prüfen:
- Einfache Textfelder lassen sich leicht bearbeiten
- Rich-Text-Felder werden sicher und korrekt dargestellt
- Bearbeitbare Felder sind im Bearbeitungsworkflow eindeutig erkennbar
- Content Elements können verschoben werden, ohne das Layout zu beschädigen
- Templates sind für eine redakteursfreundliche Ausgabe strukturiert
- Backend-Berechtigungen und Feldzugriffe funktionieren wie erwartet
Ein gutes benutzerdefiniertes Content Element sollte Redakteuren ermöglichen, Inhalte zu aktualisieren, ohne erraten zu müssen, wie das Layout funktioniert.
Best Practices für SEO, Barrierefreiheit und Performance
Benutzerdefinierte TYPO3 Content Elements sollten für Benutzer, Redakteure, Suchmaschinen und eine langfristige Wartung entwickelt werden.
SEO Best Practices
- Eine klare semantische Überschriftenstruktur beibehalten
- Doppelte H1-Tags innerhalb benutzerdefinierter Elemente vermeiden
- Klare und aussagekräftige Link-Bezeichnungen verwenden
- Wichtige Texte sichtbar im HTML ausgeben
- Strukturierte Inhalte anstelle von reinen Layout-Inhalten unterstützen
- Wichtige Inhalte nicht ausschließlich hinter JavaScript-basierter Ausgabe verstecken
Best Practices für Barrierefreiheit
- Semantische HTML-Elemente verwenden
- Alt-Text-Felder hinzufügen, wenn Bilder verwendet werden
- Barrierefreie Buttons und Links verwenden
- Tastaturnavigation funktional halten
- Rein visuelle Inhalte ohne Textalternativen vermeiden
- Kontraste, Fokuszustände und gut lesbare Abstände prüfen
Performance Best Practices
- CSS und JavaScript nur laden, wenn das Element verwendet wird
- Unnötige Frontend-Assets vermeiden
- Optimierte Bilder verwenden
- TYPO3-Caching korrekt einsetzen
- DataProcessor-Logik leichtgewichtig halten
- Keine umfangreichen externen Aufrufe während des Renderings durchführen
Ein benutzerdefiniertes Content Element sollte nicht nur korrekt aussehen. Es sollte schnell laden, barrierefrei bleiben, SEO unterstützen und während zukünftiger TYPO3 updates einfach wartbar sein.
Häufige Fehler bei der Erstellung benutzerdefinierter TYPO3 Elemente
Benutzerdefinierte TYPO3 Content Elements funktionieren häufig nicht, weil kleine Einrichtungsschritte übersehen werden. Dies sind die häufigsten Fehler, die vermieden werden sollten:
- CType ist nicht korrekt registriert
- Element erscheint nicht im Backend-Wizard
- TCA-Override-Datei befindet sich im falschen Pfad
- TYPO3-Cache wurde nach Änderungen nicht geleert
- TypoScript-Setup wurde nicht eingebunden
- Fluid Template-Pfad ist falsch
- Datenbankfeld wurde im Code hinzugefügt, aber nicht in der Datenbank angewendet
- Frontend-Ausgabe wird nicht gerendert
- Backend-Vorschau fehlt oder funktioniert nicht
- Sprachlabels fehlen
- Rohe Ausgabe wird ohne korrekte Escape- oder Bereinigungsmaßnahmen verwendet
Diese Probleme lassen sich normalerweise leicht beheben, wenn Dateistruktur, CType-Key, TCA-Setup, TypoScript-Konfiguration und Template-Pfade Schritt für Schritt überprüft werden.
Fehlerbehebung: Benutzerdefiniertes Element wird nicht angezeigt oder gerendert
Problem | Wahrscheinliche Ursache | Lösung |
Element nicht im Wizard | PageTSconfig fehlt | Wizard-Konfiguration hinzufügen und TYPO3-Cache leeren |
Feld nicht sichtbar | TCA nicht geladen | TCA-Override-Datei und CType-Konfiguration prüfen |
Frontend leer | TypoScript-Setup fehlt |
|
Template nicht gefunden | Falscher Template-Pfad |
|
Datenbankfehler | Feld nicht zur Datenbank hinzugefügt | Datenbankvergleich oder Migration ausführen |
Vorschau nicht angezeigt | Problem mit Preview-Hook oder Konfiguration | Backend Preview Renderer oder Fluid Preview Setup prüfen |
Labels fehlen | Sprachdatei fehlt oder falscher Key | XLF-Label-Pfade und Übersetzungsschlüssel prüfen |
Unsichere Ausgabe | Rohe Ausgabe falsch verwendet | Ausgabe standardmäßig escapen und vertrauenswürdiges HTML bereinigen |
Beispiel für ein benutzerdefiniertes Element: CTA-Box
Eine CTA-Box ist ein praktisches TYPO3 Content Element, da sie für Agenturen, Marketingteams und Redakteure nützlich ist. Sie bietet Redakteuren eine feste Struktur, anstatt dass sie denselben Bereich auf jeder Seite manuell erstellen müssen.
Eine einfache CTA-Box kann Folgendes enthalten:
- Überschrift
- Fließtext
- Button-Text
- Button-Link
- Bild
- Hintergrundstil
Diese Art von benutzerdefiniertem Content Element eignet sich besonders für Landingpages, Serviceseiten, Kampagnenseiten und Blog-CTAs. Entwickler können die Frontend-Ausgabe mit einem Fluid Template steuern, während Redakteure nur die benötigten Felder verwalten.
Checkliste für benutzerdefinierte Elemente vor dem Go-Live
Bevor ein benutzerdefiniertes TYPO3 Content Element veröffentlicht wird, prüfen Sie den vollständigen Workflow von der Backend-Bearbeitung bis zur Frontend-Ausgabe.
- CType funktioniert im TYPO3-Backend
- Element erscheint im Assistenten „Neues Inhaltselement“
- Felder werden korrekt gespeichert
- Frontend wird korrekt gerendert
- Fluid Template-Pfad ist korrekt
- Backend-Vorschau ist für Redakteure verständlich
- Sprachlabels sind hinzugefügt
- Ausgabe ist escaped oder bereinigt
- Barrierefreiheit wurde getestet
- Mobile Darstellung wurde getestet
- Cache-Verhalten wurde geprüft
- Redakteurs-Workflow wurde getestet
- TYPO3 v13/v14-Kompatibilität wurde geprüft
Ein benutzerdefiniertes Content Element ist erst dann bereit für den Go-Live, wenn Entwickler und Redakteure es fehlerfrei verwenden können.
Fazit
Die Erstellung eines benutzerdefinierten Content Elements in TYPO3 gibt Entwicklern bessere Kontrolle über Struktur, Felder, Frontend-Ausgabe und Redakteurs-Erfahrung.
Verwenden Sie die Core CType-Methode, wenn das Projekt vollständige Kontrolle über TCA, TypoScript, Fluid Templates, Backend-Vorschau und individuelle Verarbeitung benötigt. Verwenden Sie Content Blocks, wenn Sie schneller strukturierte Content Elements mit einer einfacheren Einrichtung erstellen möchten. Verwenden Sie Plugins oder Extensions, wenn die Funktion dynamische Logik, Datensätze, Formulare, Filter, Listen oder Workflows benötigt.
Das beste benutzerdefinierte TYPO3 Content Element ist nicht nur technisch korrekt. Es sollte einfach für Redakteure nutzbar, sicher für zukünftige Upgrades, leistungsoptimiert, barrierefrei und für SEO richtig strukturiert sein.
Ein strukturierter Start für TYPO3-Projekte
Nutzen Sie diesen Leitfaden, um typische Fehler zu vermeiden und Ihr TYPO3-Projekt von Anfang an auf ein solides Fundament zu stellen.
FAQs
Ein benutzerdefiniertes TYPO3 Content Element ist ein wiederverwendbarer Inhaltsblock, der für eine bestimmte Website-Anforderung erstellt wurde. Es kann benutzerdefinierte Felder, Backend-Einstellungen, Frontend-Rendering und ein Fluid Template enthalten.
Erstellen Sie es, indem Sie einen CType registrieren, TCA-Felder konfigurieren, es zum Assistenten „Neues Inhaltselement erstellen“ hinzufügen, das TypoScript-Rendering definieren und ein Fluid Template erstellen.
CType ist der Content-Typ-Identifier in TYPO3. Er teilt TYPO3 mit, welches Content Element verwendet wird und welche Backend-Felder, Rendering-Konfiguration und welches Template angewendet werden sollen.
Verwenden Sie Content Blocks für schneller erstellte strukturierte Elemente mit einfacherer Konfiguration. Verwenden Sie Core CType, wenn Sie vollständige Kontrolle, eine erweiterte TCA-Konfiguration, individuelles Rendering oder komplexes projektspezifisches Verhalten benötigen.
Eine benutzerdefinierte Extension oder ein Sitepackage wird empfohlen, da dadurch Konfiguration, Templates, TypoScript, Labels und Backend-Einstellungen organisiert bleiben.
Fügen Sie es mithilfe von PageTSconfig hinzu. Dadurch wird das benutzerdefinierte Content Element im TYPO3-Backend unter „Neues Inhaltselement erstellen“ sichtbar.
Ansprechpartner für Internetagentur und TYPO3 Projekte
Sven Thelemann
Servicepartner - Deutschland

Sei der erste der kommentiert