Backendmodul registrieren

Die Registrierung von Backenmodulen ist ziemlich einfach.
Ihr benötigt folgendes Snippet in eurer ext_tables.php Datei der Extension:

/***
 * Add Backend Modul
 */
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerModule(
     'MyVendor.' . $_EXTKEY, 'tools', 'myModul', '', // Position
     array(
        'MyController' => 'myFunction',
            ),
    array(
        'access' => 'user,group',
        'icon' => 'EXT:' . $_EXTKEY . '/ext_icon.gif',
        'labels' => 'LLL:EXT:' . $_EXTKEY . '/Resources/Private/Language/locallang_settings.xlf',
            )
    );

Erklärungen:

MyVendor
Das sollte inzwischen klar sein, hier müsst ihr euren Vendor Namen angeben.


'tools'

An der Position wird die Backendmodulgruppe angegeben, in der Das Mudul ergänzt wird. Üblicherweise wird hier 'web' (diese Gruppe ist in den meistens Fällen auch für den Redakteur sichtbar) oder 'tools' angegeben. Es ist aber auch jede andere Backendgruppe möglich.

Position
Im letzten string könnt ihr die Postion innerhalb des ausgewählten Backendmoduls angeben. Sofern ihr den string leer lasst, wird euer Modul am ende eingefügt.

Controller
Hier wird der BackendController mit allen benötigten Funktionen angegeben. In Modulen wird nicht zwischen cachable und non-cachable Funktionen unterschieden, da das Backend keine Ergebnisse von Controlleraufrufen cached.

Access
Zugriffsberechtigungen für das Modul, ich löse das über die normale Rechteverwaltung.Die Funktion habe ich ehrlich gesagt noch nie benutzt.

Labels
Hier wird auf eine Sprachdatei verwiesen und das hat seine Berechtigung! Es reicht nicht aus dort nur einen Namen für das Label anzugeben, da innerhalb der Sprachdatei verschiedene Felder erwartet werden.

Beispiel für eine Modul Sprachdatei:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<xliff version="1.0">
    <file source-language="en" datatype="plaintext" original="messages" date="2013-09-08T21:34:32Z" product-name="articles">
        <header/>
        <body>
            <!-- Backend Modul Labels -->
            <trans-unit id="mlang_tabs_tab">
                <source>Artikelübersicht</source>
            </trans-unit>
            <trans-unit id="mlang_labels_tabdescr">
                <source>Alle Artikel in der Übersciht</source>
            </trans-unit>
            <trans-unit id="mlang_labels_tablabel">
                <source>Artikelübersicht</source>
            </trans-unit>          
        </body>
    </file>
</xliff>

Mit diesem Snippet solltet ihr euer Backendmodul problemlos integrieren können - getestet ist das unter TYPO3 6.2 und 7.x.

Weitere Artikel zu diesem Thema:

Empfehlenswerte Lektüre:

TYPO3 Extbase: Moderne Extension-Entwicklung für TYPO3

Ein nahezu perfektes Buch für TYPO3 Extensionentwickler die mit Extbase und Fluid beginnen, aber auch erfahrene Entwickler finden noch Anregungen um ihre eigene Arbeit ständig zu verbessern. Sehr ausführlich, kurzweilig, kein Lesestoff für die Couch sondern eher ein Mitmachbuch das Spaß und Unterstützung bei der eigenen Extensionentwicklung bietet.

Kommentare

keine Kommentare vorhanden


Kommentar verfassen

Die Email Adresse wird nicht veröffentlicht.