Backend / BE Extension - Konfiguration von Konstanten direkt nach Installation möglich machen

2 minute read

Backend / BE Extension - Konfiguration von Konstanten direkt nach Installation möglich machen thumb image

Jeder kennt es: nach der Installation einer Extension bietet diese noch im Extension Manager die Möglichkeit, verschiedene Konstanten zu definieren.

Damit die eigene Extension ebenfalls so direkt konfiguriert werden kann (z.B. wenn es sich um eine reine Backend Extension handelt) muss man

1.) die Datei ext_conf_template.txt im Extensionverzeichnis anlegen

In dieser können nun die verschiedenen Einstellmöglichkeiten eingetragen werden. Dabei werden verschiedene Variablentypen wie boolean oder string unterstützt. Der prinzipielle Aufbau einer Konfigurationszeile sieht folgendermaßen aus:

cat=CATEGORY/SUBCATEGORY/SORT; type=VAR_TYPE; label=HEADER:DESCRIPTION
var = DEFAULT

Die Doku der Teile folgt weiter unten. Alle die nicht lesen möchten, können sich eine Beispielhafte Konfigurationsdatei herunterladen.

2.) die Werte in der Extension holen

$this->extConf = unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['der_extension_key']);
$var1 = $this->extConf['name_der_variable'];

Hiermit kann man sich die Konstanten in die eigene Extension holen.

Es folgt eine Kurzdoku der einzelnen Teile der Konfigurationszeile

(analog Typo3.org Introduction to Typoscript Templates )

CATEGORY – Kategorieangabe für die Konstante

  • basic – Konstanten, welche wichtig für die Extension sind; wird meist genutzt um bestimmte Funktionen ein- oder auszuschalten oder z.B. IDs von Seiten anzugeben

Die Anderen werden eher selten für diesen Zweck benutzt; wer will kann sie sich unter dem oben stehendem Link nachlesen. Die Angabe der Kategorie ist für reine Backend Extensions (und die Angabe in der ext_conf_template.txt) meines Erachtens nicht sehr interessant (würde bei basic bleiben), wogegen bei Extensions welche man als Typ in eine Seite einfügt (meist ja Frontent Ext.) die Angabe von Kategorien ganz nützlich sein kann, da man diese im Constant-Editor wiederfindet :).

SUBCATEGORIES – Unterkategorie (section) für die Konstante
  • enable,dims,file,typo,color,links,language

Diese Angaben sind für Backend Extensions auch eher irrelevant.

SORT – Wichtung/Sortierung der Konstante in der Kategorie

  • a bis z – damit kann man die Reihenfolge der Konstanten beeinflussen

Diese Angaben sind für Backend Extensions auch eher irrelevant.

VAR_TYPE – Typangabe der Konstante

  • int[uGrenze-oGrenze] – Integer in den optionalen Grenzen uGrenze bis oGrenze
  • int+ – Integer (positiv)
  • color – HTML Farbe (#FFFFFF)
  • options [item1,item2,…] – Auswahlbox mit label=wert der items; [label1=wert1,label2=wert2,…]
  • boolean [truevalue] – boolscher Wert; per truevalue (opt.) kann man den Wert setzen, welcher wahr entspricht (std: 1)
  • file [ext-list/IMAGE_EXT] – Auswahl von Ressourcen; ext-list gibt die erlaubten Dateitypen an z.B. [txt,html,htm]; mit der Konstante IMAGE_EXT werden Standard Bildtypen angegeben
  • string – String-Wert (Standard wenn nichts angegeben ist)

Durch Angabe eines dieser Werte erzeugt Typo3 automatisch das passende Eingabefeld dazu (Checkbox bei boolean…). Weitere Werte siehe Doku.

HEADER:DESCRIPTION – Überschrift und Kurzbeschreibung der Konstante

Das label wird beim ersten Auftreten von „:“ in die Teile Überschrift und Beschreibung aufgeteilt. Die Überschrift wird dabei fett in einer extra Zeile angezeigt.

var = DEFAULT – Variablenname und Defaultwert

Per DEFAULT kann man einen Wert voreintragen lassen (Standardwert). Über den angegebenen Variablennamen wird, ganz klar, später in der Extension zugegriffen.

Comments

Leave a comment — Edit this page on github and issue a PR for your comment please. HowTo?