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 sein

oder 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()->getSiteConfig($request = NULL);

Site-Konfiguration holen. Das ist die Konfiguration, die ab TYPO3 9 in den YAML-Dateien im Ordner /sites definiert wurden. Einige der Einstellungen sind auch über das Seitenmodul “Sites” einstellbar.

Im Kontext einer MiddleWare ist evtl. die site noch nicht geparsed / geladen. In diesem Fall kann der $request aus der MiddleWare übergeben werden, um die Site zu ermitteln.

$config = \nn\t3::Settings()->getSiteConfig();
$config = \nn\t3::Settings()->getSiteConfig( $request );
@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 = []);

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

\nn\t3::Settings()->setExtConf($extName = '', $key = '', $value = '');

Extension-Konfiguration schreiben. Schreibt eine Extension-Konfiguration in die LocalConfiguration.php. Die Werte können bei entsprechender Konfiguration in der ext_conf_template.txt auch über den Extension-Manager / die Extension Konfiguration im Backend bearbeitet werden.

\nn\t3::Settings()->setExtConf( 'extname', 'key', 'value' );
@return mixed