Tutorial: Neues Inhalts-Element anlegen

Folgendes Beispiel wird anhand der demotemplate Extension gezeigt. Das Beispiel verwendet hierzu flux. Sofern Ihr Element keine weiteren mehrspaltigen Inhalte benutzt, können Sie im Übrigen auch dies als normales Element anlegen.

Erstellen Sie innerhalb Ihrer Extension im Verzeichnis typo3conf/ext/demotemplate/Resources/Private/Templates/Content/ die Template Datei. Hier ein Beispiel für die Datei „DemoElement.html“:

<div xmlns="http://www.w3.org/1999/xhtml" lang="en"
   xmlns:flux="http://typo3.org/ns/FluidTYPO3/Flux/ViewHelpers"
   xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
  <f:layout name="Content" />

  <f:section name="Configuration">
    <flux:form id="demoelement" label="Demo Element" options="{group: 'Bootstrap'}">

      <flux:field.input name="input" />

    </flux:form>
  </f:section>

  <f:section name="Preview">



  </f:section>

  <f:section name="Main">

    <p>Eine Frontend Ausgabe</p>

  </f:section>
</div>

Stellen Sie sicher, dass Ihre Extension über eine ContentController.php-Klasse verfügt. (typo3conf/ext/demotemplate/Classes/Controller/ContentController.php). Falls Sie es neu erstellen, leeren Sie über das Install Tool den autoload-Cache.

Um noch einen Bug in flux zu beheben, müssen Sie das tt_content TypoScript korrigieren. Schreiben Sie daher folgendes in den setup-Bereich:

tt_content {
   demotemplate_demoelement.20.vendorName = WapplerSystems
   #<extension>_<element-id>.20.vendorName = <Vendor>
}

In der Kommentarzeile sehen Sie, wie der Befehl aufgebaut ist

Sven Wappler

Webentwickler, Programmierer, TYPO3 Experte

Das könnte Dich auch interessieren …

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.