Site settings¶
Changed in version 12.1: Before TYPO3 v12.1 the site settings were stored in the config.yaml
file under the settings
key. An upgrade wizard migrates settings
to the new settings.yaml
file.
Site settings can be used to provide settings for a site. They can be accessed via
the \TYPO3\CMS\Core\Site\Entity\Site object in frontend and backend context using PHP
the siteSettings key of the data function in TypoScript
For instance, settings can be used in custom frontend code to deliver features which might vary per site for extensions. An example may be to configure storage page IDs.
The settings are defined in the config/sites/<my_site>/settings.yaml
file.
Adding site settings¶
Add settings to the settings.yaml
:
categoryPid: 658
styles:
content:
loginform:
pid: 23
Note
This example shows how to fill a constant of
EXT:felogin via site settings
(styles.content.loginform.pid
) and configures a custom
categoryPid
.
Accessing site settings in page TSconfig or TypoScript¶
// store tx_ext_data records on the given storage page by default (e.g. through IRRE)
TCAdefaults.tx_ext_data.pid = {$categoryPid}
// load category selection for plugin from out dedicated storage page
TCEFORM.tt_content.pi_flexform.ext_pi1.sDEF.categories.PAGE_TSCONFIG_ID = {$categoryPid}
Note
The TypoScript constants are evaluated in this order:
Configuration from $GLOBALS['TYPO3_CONF_VARS']['FE']['defaultTypoScript_constants']
Site specific settings from the site configuration
Constants from
sys_template
database records