Settings¶
\nn\t3::Settings()¶
Methoden, um den Zugriff auf TypoScript Setup, Constanten und PageTsConfig zu vereinfachen.
Overview of Methods¶
\nn\t3::Settings()->addPageConfig($str = '');¶
Page-Config hinzufügen
Alias zu \nn\t3::Registry()->addPageConfig( $str );
\nn\t3::Settings()->addPageConfig( 'test.was = 10' );
\nn\t3::Settings()->addPageConfig( '<INCLUDE_TYPOSCRIPT: source="FILE:EXT:extname/Configuration/TypoScript/page.txt">' );
\nn\t3::Settings()->addPageConfig( '@import "EXT:extname/Configuration/TypoScript/page.ts"' );
@return void\nn\t3::Settings()->get($extensionName = '', $path = '');¶
Holt das TypoScript-Setup und dort den Abschnitt “settings”.
Werte aus dem FlexForm werden dabei nicht gemerged.
Alias zu \nn\t3::Settings()->getSettings().
\nn\t3::Settings()->get( 'nnsite' );
\nn\t3::Settings()->get( 'nnsite', 'path.in.settings' );
@return array\nn\t3::Settings()->getConstants($tsPath = '');¶
Array der TypoScript-Konstanten holen.
\nn\t3::Settings()->getConstants();
\nn\t3::Settings()->getConstants('pfad.zur.konstante');
Existiert auch als ViewHelper:
{nnt3:ts.constants(path:'pfad.zur.konstante')}
@return array\nn\t3::Settings()->getExtConf($extName = '');¶
Extension-Konfiguration holen.
Kommen aus der LocalConfiguration.php, werden über die Extension-Einstellungen
im Backend bzw. ext_conf_template.txt definiert
Früher: $GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['your_extension_key']
\nn\t3::Settings()->getExtConf( 'extname' );
@return mixed\nn\t3::Settings()->getFromPath($tsPath = '', $setup = NULL);¶
Setup von einem gegebenen Pfad holen, z.B. ‘plugin.tx_example.settings’
\nn\t3::Settings()->getFromPath('plugin.pfad');
\nn\t3::Settings()->getFromPath('L', \nn\t3::Request()->GP());
\nn\t3::Settings()->getFromPath('a.b', ['a'=>['b'=>1]]);
Existiert auch als ViewHelper:
{nnt3:ts.setup(path:'pfad.zur.setup')}
@return array\nn\t3::Settings()->getFullTyposcript($pid = NULL);¶
Das komplette TypoScript Setup holen, als einfaches Array - ohne “.”-Syntax Funktioniert sowohl im Frontend als auch Backend, mit und ohne übergebener pid
\nn\t3::Settings()->getFullTyposcript();
\nn\t3::Settings()->getFullTyposcript( $pid );
@return array\nn\t3::Settings()->getMergedSettings($extensionName = NULL, $ttContentUidOrSetupArray = []);¶
Merge aus TypoScript-Setup für ein Plugin und seinem Flexform holen.
Gibt das TypoScript-Array ab plugin.tx_extname.settings… zurück.
Wichtig: $extensionName nur angeben, wenn das Setup einer FREMDEN Extension geholt werden soll oder es keinen Controller-Context gibt, weil der Aufruf aus dem Backend gemacht wird… sonst werden die FlexForm-Werte nicht berücksichtigt!
Im FlexForm <settings.flexform.varName> verwenden!
| <settings.flexform.varName> überschreibt dann settings.varName im TypoScript-Setup
$ttContentUidOrSetupArray kann uid eines tt_content-Inhaltselementes seinoder ein einfaches Array zum Überschreiben der Werte aus dem TypoScript / FlexForm
\nn\t3::Settings()->getMergedSettings();
\nn\t3::Settings()->getMergedSettings( 'nnsite' );
\nn\t3::Settings()->getMergedSettings( $extensionName, $ttContentUidOrSetupArray );
@return array\nn\t3::Settings()->getPageConfig($tsPath = '', $pid = NULL);¶
Page-Configuration holen
\nn\t3::Settings()->getPageConfig();
\nn\t3::Settings()->getPageConfig('RTE.default.preset');
\nn\t3::Settings()->getPageConfig( $tsPath, $pid );
Existiert auch als ViewHelper:
{nnt3:ts.page(path:'pfad.zur.pageconfig')}
@return array\nn\t3::Settings()->getPlugin($extName = NULL);¶
Das Setup für ein bestimmtes Plugin holen.
\nn\t3::Settings()->getPlugin('extname') ergibt TypoScript ab plugin.tx_extname...
Wichtig: $extensionName nur angeben, wenn das Setup einer FREMDEN Extension geholt werden soll oder es keinen Controller-Context gibt, weil der Aufruf z.B. aus dem Backend gemacht wird
@return array\nn\t3::Settings()->getSettings($extensionName = '', $path = '');¶
Holt das TypoScript-Setup und dort den Abschnitt “settings”. Werte aus dem FlexForm werden dabei nicht gemerged.
\nn\t3::Settings()->getSettings( 'nnsite' );
\nn\t3::Settings()->getSettings( 'nnsite', 'example.path' );
@return array\nn\t3::Settings()->getStoragePid($extName = NULL);¶
Aktuelle (ERSTE) StoragePid für das aktuelle Plugin holen.
Gespeichert im TypoScript-Setup der Extension unter
| plugin.tx_extname.persistence.storagePid bzw. im
FlexForm des Plugins auf der jeweiligen Seite.
WICHTIG: Merge mit gewählter StoragePID aus dem FlexForm passiert nur, wenn ``$extName``leer gelassen wird.
\nn\t3::Settings()->getStoragePid();         // 123
\nn\t3::Settings()->getStoragePid('nnsite'); // 466
@return string\nn\t3::Settings()->getStoragePids($extName = NULL, $recursive = 0);¶
ALLE storagePids für das aktuelle Plugin holen.
Gespeichert als komma-separierte Liste im TypoScript-Setup der Extension unter
| plugin.tx_extname.persistence.storagePid bzw. im
FlexForm des Plugins auf der jeweiligen Seite.
WICHTIG: Merge mit gewählter StoragePID aus dem FlexForm passiert nur, wenn ``$extName``leer gelassen wird.
\nn\t3::Settings()->getStoragePids();                    // [123, 466]
\nn\t3::Settings()->getStoragePids('nnsite');            // [123, 466]
Auch die child-PageUids holen?
| true nimmt den Wert für “Rekursiv” aus dem FlexForm bzw. aus dem
TypoScript der Extension von plugin.tx_extname.persistence.recursive
\nn\t3::Settings()->getStoragePids(true);                // [123, 466, 124, 467, 468]
\nn\t3::Settings()->getStoragePids('nnsite', true);      // [123, 466, 124, 467, 468]
Alternativ kann für die Tiefe / Rekursion auch ein numerischer Wert übergeben werden.
\nn\t3::Settings()->getStoragePids(2);               // [123, 466, 124, 467, 468]
\nn\t3::Settings()->getStoragePids('nnsite', 2);     // [123, 466, 124, 467, 468]
@return array\nn\t3::Settings()->getTyposcriptObject($pid = NULL);¶
TemplateService instanziieren, TypoScript-Config und Setup parsen.
Interne Funktion – nicht zur Verwendung gedacht.
| getFullTyposcript nutzen.
@return object