diff --git a/Documentation/Setup/Config/Index.rst b/Documentation/Setup/Config/Index.rst index 7b09714f2..63d4b2141 100644 --- a/Documentation/Setup/Config/Index.rst +++ b/Documentation/Setup/Config/Index.rst @@ -45,17 +45,13 @@ Properties of 'config' :local: - -.. ### BEGIN~OF~TABLE ### - - .. _setup-config-absrefprefix: absRefPrefix ------------ .. confval:: absRefPrefix - :name: setup-config-absrefprefix + :name: config-absrefprefix :Data type: :ref:`data-type-string` :Special value: "auto" @@ -110,7 +106,7 @@ additionalHeaders ----------------- .. confval:: additionalHeaders - :name: setup-config-additionalheaders + :name: config-additionalheaders :Data type: numerically indexed array of "HTTP header entries". @@ -199,16 +195,12 @@ the Admin Panel manual `. ATagParams ---------- -.. container:: table-row - - Property - ATagParams - Data type - *-params* +.. confval:: ATagParams + :name: config-ATagParams + :Data type: *-params* - Description - Additional parameters to all links in TYPO3 (excluding menu-links). + Additional parameters to all links in TYPO3 (excluding menu-links). .. index:: config; cache @@ -217,73 +209,70 @@ ATagParams cache ----- -.. container:: table-row +.. confval:: cache + :name: config-cache + :Data type: array - Property - cache + Determine the maximum cache lifetime of a page. - Data type - array + The maximum cache lifetime of a page can not only be determined by the + start and stop times of content elements on the page itself, but also + by arbitrary records on any other page. However, the page has to be + configured so that TYPO3 knows the start and stop times of which + records to include. Otherwise, the cache entry will be used although a + start/stop date already passed by. - Description - Determine the maximum cache lifetime of a page. + To include records of type on page into the cache + lifetime calculation of page , add the following TypoScript: - The maximum cache lifetime of a page can not only be determined by the - start and stop times of content elements on the page itself, but also - by arbitrary records on any other page. However, the page has to be - configured so that TYPO3 knows the start and stop times of which - records to include. Otherwise, the cache entry will be used although a - start/stop date already passed by. - - To include records of type
on page into the cache - lifetime calculation of page , add the following TypoScript: + .. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript + config.cache. =
: - config.cache. =
: + Multiple record sources can be added as comma-separated list, see the + examples. - Multiple record sources can be added as comma-separated list, see the - examples. + You can use the keyword "all" instead of a to consider + records for the cache lifetime of all pages. - You can use the keyword "all" instead of a to consider - records for the cache lifetime of all pages. + You can use the keyword "current" instead of a to consider + records on the current page for the cache life of itself. - You can use the keyword "current" instead of a to consider - records on the current page for the cache life of itself. +Examples +~~~~~~~~ - Examples - This includes the fe\_users records on page 2 in the cache lifetime - calculation for page 10: +This includes the :sql:`fe_users` records on page 2 in the cache lifetime +calculation for page 10: - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - config.cache.10 = fe_users:2 + config.cache.10 = fe_users:2 - This includes records from multiple sources, namely the fe\_users - records on page 2 and the tt\_news records on page 11: +This includes records from multiple sources, namely the :sql:`fe_users` +records on page 2 and the :sql:`tt_new` records on page 11: - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - config.cache.10 = fe_users:2,tt_news:11 + config.cache.10 = fe_users:2,tt_news:11 - Consider the fe\_user records on the storage page 2 for the cache lifetime of all - pages: +Consider the :sql:`fe_users` records on the storage page 2 for the cache lifetime of all +pages: - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - config.cache.all = fe_users:2 + config.cache.all = fe_users:2 - Each pages cache lifetime is influenced if fe_users stored on the page itself get - changed: +Each pages cache lifetime is influenced if fe_users stored on the page itself get +changed: - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - config.cache.all = fe_users:current + config.cache.all = fe_users:current .. index:: config; cache_clearAtMidnight @@ -292,22 +281,13 @@ cache cache\_clearAtMidnight ---------------------- -.. container:: table-row - - Property - cache\_clearAtMidnight - - Data type - :ref:`data-type-boolean` - - Default - false - - Description - With this setting the cache always expires at midnight of the day, the - page is scheduled to expire. - +.. confval:: cache_clearAtMidnight + :name: config-cache-clearAtMidnight + :Data type: :ref:`data-type-boolean` + :Default: `false` + With this setting the cache always expires at midnight of the day, the + page is scheduled to expire. .. index:: config; cache_period @@ -316,25 +296,15 @@ cache\_clearAtMidnight cache\_period ------------- -.. container:: table-row - - Property - cache\_period - - Data type - :ref:`data-type-integer` - - Default - 86400 *(= 24 hours)* - - Description - The number of second a page may remain in cache. - - This value is overridden by the value set in the page-record - (field="cache\_timeout") if this value is greater than zero. - +.. confval:: cache_period + :name: config-cache-period + :Data type: :ref:`data-type-integer` + :Default: `86400` *(= 24 hours)* +The number of second a page may remain in cache. +This value is overridden by the value set in the page-record +`field="cache_timeout"` if this value is greater than zero. .. index:: config; compressCss .. _setup-config-compresscss: @@ -342,44 +312,39 @@ cache\_period compressCss ----------- -.. container:: table-row - - Property - compressCss - - Data type - :ref:`data-type-boolean` +.. confval:: compressCss + :name: config-compressCss + :Data type: :ref:`data-type-boolean` + :Default: `0` - Default - 0 + If set, CSS files referenced in :typoscript:`page.includeCSS` and the like will be + minified and compressed. Does not work on files, which are referenced + in :typoscript:`page.headerData`. - Description - If set, CSS files referenced in :typoscript:`page.includeCSS` and the like will be - minified and compressed. Does not work on files, which are referenced - in :typoscript:`page.headerData`. + Minification will remove all excess space. The more significant + compression step (using gzip compression) requires + :php:`$GLOBALS['TYPO3_CONF_VARS']['FE']['compressionLevel']` to be enabled in the + Install Tool. For this to work you also need to activate the gzip- + related compressionLevel options in :file:`.htaccess`, as otherwise the + compressed files will not be readable by the user agent. - Minification will remove all excess space. The more significant - compression step (using gzip compression) requires - :php:`$GLOBALS['TYPO3_CONF_VARS']['FE']['compressionLevel']` to be enabled in the - Install Tool. For this to work you also need to activate the gzip- - related compressionLevel options in :file:`.htaccess`, as otherwise the - compressed files will not be readable by the user agent. + TYPO3 comes with a built-in compression handler, but you can + also register your own one using + :php:`$GLOBALS['TYPO3_CONF_VARS']['FE']['cssCompressHandler']`. - TYPO3 comes with a built-in compression handler, but you can - also register your own one using - :php:`$GLOBALS['TYPO3_CONF_VARS']['FE']['cssCompressHandler']`. + .. code-block:: php - .. code-block:: php + $GLOBALS['TYPO3_CONF_VARS']['FE']['cssCompressHandler'] = + \TYPO3\CMS\Core\Extension\ExtensionManager::extPath('my_extension') . + 'Classes/CssCompressHandler.php:MyVendor\MyExtensionen\CssCompressHandler->compressCss'; - $GLOBALS['TYPO3_CONF_VARS']['FE']['cssCompressHandler'] = - \TYPO3\CMS\Core\Extension\ExtensionManager::extPath($_EXTKEY) . - 'Classes/CssCompressHandler.php:Vendor\MyExt\CssCompressHandler->compressCss'; +Example +~~~~~~~ - Example - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - config.compressCss = 1 + config.compressCss = 1 .. index:: config; compressJs @@ -388,47 +353,42 @@ compressCss compressJs ---------- -.. container:: table-row - - Property - compressJs - - Data type - :ref:`data-type-boolean` +.. confval:: compressJs + :name: config-compressJs + :Data type: :ref:`data-type-boolean` + :Default: `0` - Default - 0 + Enabling this option together with + :php:`$GLOBALS['TYPO3_CONF_VARS']['FE']['compressionLevel']` in the Install Tool + delivers Frontend JavaScript files referenced in :typoscript:`page.includeJS` and + the like using GZIP compression. Does not work on files, which are + referenced in :typoscript:`page.headerData`. - Description - Enabling this option together with - :php:`$GLOBALS['TYPO3_CONF_VARS']['FE']['compressionLevel']` in the Install Tool - delivers Frontend JavaScript files referenced in :typoscript:`page.includeJS` and - the like using GZIP compression. Does not work on files, which are - referenced in :typoscript:`page.headerData`. + This can significantly reduce file sizes of linked JavaScript files + and thus decrease loading times. - This can significantly reduce file sizes of linked JavaScript files - and thus decrease loading times. + Please note that this requires :file:`.htaccess` to be adjusted, as otherwise + the files will not be readable by the user agent. Please see the + description of :php:`$GLOBALS['TYPO3_CONF_VARS']['FE']['compressionLevel']` in the + Install Tool. - Please note that this requires :file:`.htaccess` to be adjusted, as otherwise - the files will not be readable by the user agent. Please see the - description of :php:`$GLOBALS['TYPO3_CONF_VARS']['FE']['compressionLevel']` in the - Install Tool. + TYPO3 comes with a built-in compression handler, but you can + also register your own one using + :php:`$GLOBALS['TYPO3_CONF_VARS']['FE']['jsCompressHandler']`. - TYPO3 comes with a built-in compression handler, but you can - also register your own one using - :php:`$GLOBALS['TYPO3_CONF_VARS']['FE']['jsCompressHandler']`. + .. code-block:: php - .. code-block:: php + $GLOBALS['TYPO3_CONF_VARS']['FE']['jsCompressHandler'] = + \TYPO3\CMS\Core\Extension\ExtensionManager::extPath('my_extension') . + 'Classes/JsCompressHandler.php:MyVendor\MyExtension\JsCompressHandler->compressJs'; - $GLOBALS['TYPO3_CONF_VARS']['FE']['jsCompressHandler'] = - \TYPO3\CMS\Core\Extension\ExtensionManager::extPath($_EXTKEY) . - 'Classes/JsCompressHandler.php:Vendor\MyExt\JsCompressHandler->compressJs'; +Example +~~~~~~~ - Example - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript + .. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - config.compressJs = 1 + config.compressJs = 1 .. index:: config; concatenateCss @@ -437,42 +397,34 @@ compressJs concatenateCss -------------- -.. container:: table-row - - Property - concatenateCss - - Data type - :ref:`data-type-boolean` - - Default - 0 - - Description - Setting :typoscript:`config.concatenateCss` merges Stylesheet files referenced in - the Frontend in page.includeCSS and the like together. Files are merged - only, if their media attribute has the same value, e.g. if it is "all" - for several files. Does not work on files, which are referenced in - :typoscript:`page.headerData`. - - TYPO3 comes with a built-in concatenation handler, but you - can also register your own one using - :php:`$GLOBALS['TYPO3_CONF_VARS']['FE']['cssConcatenateHandler']`. +.. confval:: concatenateCss + :name: config-concatenateCss + :Data type: :ref:`data-type-boolean` + :Default: `0` - .. code-block:: php + Setting :typoscript:`config.concatenateCss` merges Stylesheet files referenced in + the Frontend in page.includeCSS and the like together. Files are merged + only, if their media attribute has the same value, e.g. if it is "all" + for several files. Does not work on files, which are referenced in + :typoscript:`page.headerData`. - $GLOBALS['TYPO3_CONF_VARS']['FE']['cssCompressHandler'] = - \TYPO3\CMS\Core\Extension\ExtensionManager::extPath($_EXTKEY) . - 'Classes/CssCompressHandler.php:Vendor\MyExt\CssCompressHandler->compressCss'; + TYPO3 comes with a built-in concatenation handler, but you + can also register your own one using + :php:`$GLOBALS['TYPO3_CONF_VARS']['FE']['cssConcatenateHandler']`. - Example - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript + .. code-block:: php - config.concatenateCss = 1 + $GLOBALS['TYPO3_CONF_VARS']['FE']['cssCompressHandler'] = + \TYPO3\CMS\Core\Extension\ExtensionManager::extPath('my_extension') . + 'Classes/CssCompressHandler.php:MyVendor\MyExtension\CssCompressHandler->compressCss'; +Example +~~~~~~~ +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript + config.concatenateCss = 1 .. index:: config; concatenateJs .. _setup-config-concatenatejs: @@ -480,48 +432,43 @@ concatenateCss concatenateJs ------------- -.. container:: table-row - - Property - concatenateJs +.. confval:: concatenateJs + :name: config-concatenateJs + :Data type: :ref:`data-type-boolean` + :Default: `0` - Data type - :ref:`data-type-boolean` + Setting :typoscript:`config.concatenateJs` merges JavaScript files referenced in + the Frontend in :typoscript:`page.includeJS` and the like together. Does not work + on files, which are referenced in :typoscript:`page.headerData`. - Default - 0 + If all files to be concatenated are marked with the async flag, the async attribute is assigned to the script tag. - Description - Setting :typoscript:`config.concatenateJs` merges JavaScript files referenced in - the Frontend in :typoscript:`page.includeJS` and the like together. Does not work - on files, which are referenced in :typoscript:`page.headerData`. + TYPO3 comes with a built-in concatenation handler, but you + can also register your own one using + :php:`$GLOBALS['TYPO3_CONF_VARS']['FE']['jsConcatenateHandler']`. - If all files to be concatenated are marked with the async flag, the async attribute is assigned to the script tag. + .. code-block:: php - TYPO3 comes with a built-in concatenation handler, but you - can also register your own one using - :php:`$GLOBALS['TYPO3_CONF_VARS']['FE']['jsConcatenateHandler']`. + $GLOBALS['TYPO3_CONF_VARS']['FE']['jsConcatenateHandler'] = + \TYPO3\CMS\Core\Extension\ExtensionManager::extPath('my_extension') . + 'Classes/JsConcatenateHandler.php:MyVendor\MyExtension\JsConcatenateHandler->concatenateJs'; - .. code-block:: php +Example +~~~~~~~ - $GLOBALS['TYPO3_CONF_VARS']['FE']['jsConcatenateHandler'] = - \TYPO3\CMS\Core\Extension\ExtensionManager::extPath($_EXTKEY) . - 'Classes/JsConcatenateHandler.php:Vendor\MyExt\JsConcatenateHandler->concatenateJs'; +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - Example - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript + config.concatenateJs = 1 - config.concatenateJs = 1 + page = PAGE + page.includeJSFooter { + test = fileadmin/user_upload/test.js + test.async = 1 - page = PAGE - page.includeJSFooter { - test = fileadmin/user_upload/test.js - test.async = 1 - - test2 = fileadmin/user_upload/test2.js - test2.async = 1 - } + test2 = fileadmin/user_upload/test2.js + test2.async = 1 + } @@ -532,60 +479,58 @@ concatenateJs contentObjectExceptionHandler ----------------------------- -.. container:: table-row - - Property - contentObjectExceptionHandler +.. confval:: contentObjectExceptionHandler + :name: config-contentObjectExceptionHandler + :Data type: :ref:`data-type-boolean` + :Default: `0` - Data type - array + Exceptions which occur during rendering of content objects (typically plugins) + will be caught by default in production context and an error message + is shown along with the rendered output. - Description - Exceptions which occur during rendering of content objects (typically plugins) - will be caught by default in production context and an error message - is shown along with the rendered output. + If this is done, the page will remain available while the section of the page + that produces an error (i.e. throws an exception) will show a configurable error message. + By default this error message contains a random code which references + the exception and is also logged by the :ref:`logging framework ` + for developer reference. - If this is done, the page will remain available while the section of the page - that produces an error (i.e. throws an exception) will show a configurable error message. - By default this error message contains a random code which references - the exception and is also logged by the :ref:`logging framework ` - for developer reference. + .. important:: - .. important:: + Instead of breaking the whole page when an exception occurs, an error message + is shown for the part of the page that is broken. + Be aware, it is possible that a page with an error message gets cached. - Instead of breaking the whole page when an exception occurs, an error message - is shown for the part of the page that is broken. - Be aware, it is possible that a page with an error message gets cached. + To get rid of the error message not only the actual error needs to be fixed, + but the cache must be cleared for this page. - To get rid of the error message not only the actual error needs to be fixed, - but the cache must be cleared for this page. +Examples +~~~~~~~~ - Examples - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - # Use 1 for the default exception handler (enabled by default in production context) - config.contentObjectExceptionHandler = 1 + # Use 1 for the default exception handler (enabled by default in production context) + config.contentObjectExceptionHandler = 1 - # Use a class name for individual exception handlers - config.contentObjectExceptionHandler = TYPO3\CMS\Frontend\ContentObject\Exception\ProductionExceptionHandler + # Use a class name for individual exception handlers + config.contentObjectExceptionHandler = TYPO3\CMS\Frontend\ContentObject\Exception\ProductionExceptionHandler - # Customize the error message. A randomly generated code is replaced within the message if needed. - config.contentObjectExceptionHandler.errorMessage = Oops an error occurred. Code: %s + # Customize the error message. A randomly generated code is replaced within the message if needed. + config.contentObjectExceptionHandler.errorMessage = Oops an error occurred. Code: %s - # Configure exception codes which will not be handled, but bubble up again (useful for temporary fatal errors) - tt_content.login.20.exceptionHandler.ignoreCodes.10 = 1414512813 + # Configure exception codes which will not be handled, but bubble up again (useful for temporary fatal errors) + tt_content.login.20.exceptionHandler.ignoreCodes.10 = 1414512813 - # Disable the exception handling for an individual plugin/ content object - tt_content.login.20.exceptionHandler = 0 + # Disable the exception handling for an individual plugin/ content object + tt_content.login.20.exceptionHandler = 0 - # ignoreCodes and errorMessage can be both configured globally … - config.contentObjectExceptionHandler.errorMessage = Oops an error occurred. Code: %s - config.contentObjectExceptionHandler.ignoreCodes.10 = 1414512813 + # ignoreCodes and errorMessage can be both configured globally … + config.contentObjectExceptionHandler.errorMessage = Oops an error occurred. Code: %s + config.contentObjectExceptionHandler.ignoreCodes.10 = 1414512813 - # … or locally for individual content objects - tt_content.login.20.exceptionHandler.errorMessage = Oops an error occurred. Code: %s - tt_content.login.20.exceptionHandler.ignoreCodes.10 = 1414512813 + # … or locally for individual content objects + tt_content.login.20.exceptionHandler.errorMessage = Oops an error occurred. Code: %s + tt_content.login.20.exceptionHandler.ignoreCodes.10 = 1414512813 .. index:: config; debug @@ -594,18 +539,13 @@ contentObjectExceptionHandler debug ----- -.. container:: table-row +.. confval:: debug + :name: config-debug + :Data type: :ref:`data-type-boolean` - Property - debug - - Data type - :ref:`data-type-boolean` - - Description - If set, then debug information in the TypoScript code is sent. - This applies e.g. to menu objects and the parsetime output. - The parsetime will be sent as HTTP response header `X-TYPO3-Parsetime`. + If set, then debug information in the TypoScript code is sent. + This applies e.g. to menu objects and the parsetime output. + The parsetime will be sent as HTTP response header `X-TYPO3-Parsetime`. @@ -615,48 +555,43 @@ debug disableAllHeaderCode -------------------- -.. container:: table-row +.. confval:: disableAllHeaderCode + :name: config-disableAllHeaderCode + :Data type: :ref:`data-type-boolean` + :Default: `false` - Property - disableAllHeaderCode + If this is not set or set to false, the :ref:`page` object automatically + outputs a HTML skeleton, see :ref:`page_output`. - Data type - :ref:`data-type-boolean` + To disable this default behaviour set :typoscript:`disableAllHeaderCode = 1`. + The page outputs only the result of the cObject array + (1,2,3,4...) of the :ref:`page` object. - Default - false + Use this feature in templates supplying other content-types than HTML. + That could be an image, a RSS-feed, an ajax request in a format like + XML or JSON. - Description - If this is not set or set to false, the :ref:`page` object automatically - outputs a HTML skeleton, see :ref:`page_output`. + This property can also be used to generate the complete HTML page, + including the :html:`` and :html:`` tags manually. - To disable this default behaviour set :typoscript:`disableAllHeaderCode = 1`. - The page outputs only the result of the cObject array - (1,2,3,4...) of the :ref:`page` object. - Use this feature in templates supplying other content-types than HTML. - That could be an image, a RSS-feed, an ajax request in a format like - XML or JSON. +Example +~~~~~~~ - This property can also be used to generate the complete HTML page, - including the :html:`` and :html:`` tags manually. +A page type providing JSON: +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - Example - A page type providing JSON: - - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - - json = PAGE - json { - typeNum = 1617455215 - 10 =< tt_content.list.20.tx_myextension_myjsonplugin - config { - disableAllHeaderCode = 1 - additionalHeaders.10.header = Content-type:application/json - } - } + json = PAGE + json { + typeNum = 1617455215 + 10 =< tt_content.list.20.tx_myextension_myjsonplugin + config { + disableAllHeaderCode = 1 + additionalHeaders.10.header = Content-type:application/json + } + } @@ -666,26 +601,19 @@ disableAllHeaderCode disableBodyTag -------------- -.. container:: table-row - - Property - disableBodyTag +.. confval:: disableBodyTag + :name: config-disableBodyTag + :Data type: :ref:`data-type-boolean` + :Default: `false` - Data type - :ref:`data-type-boolean` + If this option is set, the TYPO3 core will not generate the + opening :html:`` part of the body tag. The closing :html:`` + is not affected and will still be issued. - Default - 0 (false) - - Description - If this option is set, the TYPO3 core will not generate the - opening :html:`` part of the body tag. The closing :html:`` - is not affected and will still be issued. - - :typoscript:`disableBodyTag` takes precedence over the :ref:`page` properties - :typoscript:`bodyTagCObject`, :typoscript:`bodyTag` and - :typoscript:`bodyTagAdd`. With :typoscript:`config.disableBodyTag = 1` the others are - ignored and don't have any effect. + :typoscript:`disableBodyTag` takes precedence over the :ref:`page` properties + :typoscript:`bodyTagCObject`, :typoscript:`bodyTag` and + :typoscript:`bodyTagAdd`. With :typoscript:`config.disableBodyTag = 1` the others are + ignored and don't have any effect. @@ -695,19 +623,14 @@ disableBodyTag disableCanonical ---------------- -.. container:: table-row - - Property - disableCanonical +.. confval:: disableCanonical + :name: config-disableCanonical + :Data type: :ref:`data-type-boolean` - Data type - :ref:`data-type-boolean` - - Description - When the system extension SEO is installed, canonical tags are generated - automatically to prevent duplicate content. A good canonical is added - in many cases by default. For edge cases, you might want to disable the - rendering of this tag. You can do this by setting this property to true. + When the system extension SEO is installed, canonical tags are generated + automatically to prevent duplicate content. A good canonical is added + in many cases by default. For edge cases, you might want to disable the + rendering of this tag. You can do this by setting this property to true. .. index:: config; disableHrefLang @@ -716,18 +639,13 @@ disableCanonical disableHrefLang --------------- -.. container:: table-row - - Property - disableHrefLang +.. confval:: disableHrefLang + :name: config-disableHrefLang + :Data type: :ref:`data-type-boolean` - Data type - :ref:`data-type-boolean` - - Description - When the system extension SEO is installed, hreflang tags are generated - automatically in multi-language setups. By settings this option to true - the rendering of those tags will be skipped. + When the system extension SEO is installed, hreflang tags are generated + automatically in multi-language setups. By settings this option to true + the rendering of those tags will be skipped. .. index:: config; disablePrefixComment .. _setup-config-disableprefixcomment: @@ -735,18 +653,13 @@ disableHrefLang disablePrefixComment -------------------- -.. container:: table-row - - Property - disablePrefixComment +.. confval:: disablePrefixComment + :name: config-disablePrefixComment + :Data type: :ref:`data-type-boolean` - Data type - :ref:`data-type-boolean` - - Description - If set, the stdWrap property :ref:`stdwrap-prefixComment` will be disabled, thus - preventing any revealing and space-consuming comments in the HTML - source code. + If set, the stdWrap property :ref:`stdwrap-prefixComment` will be disabled, thus + preventing any revealing and space-consuming comments in the HTML + source code. @@ -756,19 +669,12 @@ disablePrefixComment disablePreviewNotification -------------------------- -.. container:: table-row - - Property - disablePreviewNotification - - Data type - :ref:`data-type-boolean` +.. confval:: disablePreviewNotification + :name: config-disablePreviewNotification + :Data type: :ref:`data-type-boolean` + :Default: `0` - Default - 0 - - Description - Disables the "preview" notification box completely. + Disables the "preview" notification box completely. .. index:: config; disableLanguageHeader @@ -777,24 +683,17 @@ disablePreviewNotification disableLanguageHeader --------------------- -.. container:: table-row - - Property - disableLanguageHeader - - Data type - :ref:`data-type-boolean` - - Default - 0 +.. confval:: disableLanguageHeader + :name: config-disableLanguageHeader + :Data type: :ref:`data-type-boolean` + :Default: `0` - Description - TYPO3 by default sends a `Content-language: XX` HTTP header, - where "XX" is the ISO code of the according language. The - value is based on the language defined in the - :ref:`Site Configuration `. + TYPO3 by default sends a `Content-language: XX` HTTP header, + where "XX" is the ISO code of the according language. The + value is based on the language defined in the + :ref:`Site Configuration `. - If :typoscript:`config.disableLanguageHeader` is set, this header will not be sent. + If :typoscript:`config.disableLanguageHeader` is set, this header will not be sent. .. index:: config; doctype @@ -803,41 +702,37 @@ disableLanguageHeader doctype ------- -.. container:: table-row - - Property - doctype - - Data type - :ref:`data-type-string` - - Description - If set, then a document type declaration (and an XML prologue) will be - generated. The value can either be a complete doctype or one of the - following keywords: - - **xhtml\_trans** for the XHTML 1.0 Transitional doctype. - - **xhtml\_strict** for the XHTML 1.0 Strict doctype. - - **xhtml\_basic** for the XHTML basic doctype. - - **xhtml\_11** for the XHTML 1.1 doctype. - - **xhtml+rdfa\_10** for the XHTML+RDFa 1.0 doctype. +.. confval:: doctype + :name: config-doctype + :Data type: :ref:`data-type-string` - **html5** for the HTML5 doctype. + If set, then a document type declaration (and an XML prologue) will be + generated. The value can either be a complete doctype or one of the + following keywords: - **none** for *no* doctype at all. + `xhtml_trans` + for the XHTML 1.0 Transitional doctype. + `xhtml_strict` + for the XHTML 1.0 Strict doctype. + `xhtml_basic` + for the XHTML basic doctype. + `xhtml_11` + for the XHTML 1.1 doctype. + `xhtml+rdfa_10` + for the XHTML+RDFa 1.0 doctype. + `html5` + for the HTML5 doctype. + `none` + for *no* doctype at all. - See :ref:`config.htmlTag_setParams ` - for more details on the effect on the HTML tag. + See :ref:`config.htmlTag_setParams ` + for more details on the effect on the HTML tag. - Default is the HTML 5 doctype: + Default is the HTML 5 doctype: - .. code-block:: html + .. code-block:: html - + .. index:: config; enableContentLengthHeader .. _setup-config-enablecontentlengthheader: @@ -845,25 +740,17 @@ doctype enableContentLengthHeader ------------------------- -.. container:: table-row - - Property - enableContentLengthHeader +.. confval:: enableContentLengthHeader + :name: config-enableContentLengthHeader + :Data type: :ref:`data-type-boolean` + :Default: `1` - Data type - :ref:`data-type-boolean` - - Default - 1 - - Description - If set, a header "content-length: [bytes of content]" is sent. - - If a backend user is logged in, this is disabled. The reason is - that the content length header cannot include the length of these - objects and the content-length will cut off the length of the - document in some browsers. + If set, a header "content-length: [bytes of content]" is sent. + If a backend user is logged in, this is disabled. The reason is + that the content length header cannot include the length of these + objects and the content-length will cut off the length of the + document in some browsers. .. index:: config; extTarget .. _setup-config-exttarget: @@ -871,19 +758,12 @@ enableContentLengthHeader extTarget --------- -.. container:: table-row - - Property - extTarget - - Data type - target - - Default - \_top +.. confval:: extTarget + :name: config-extTarget + :Data type: target + :Default: `_top` - Description - Default external target. Used by typolink if no extTarget is set + Default external target. Used by :ref:`typolink` if no extTarget is set. @@ -893,16 +773,11 @@ extTarget fileTarget ---------- -.. container:: table-row +.. confval:: fileTarget + :name: config-fileTarget + :Data type: target - Property - fileTarget - - Data type - target - - Description - Default file link target. Used by typolink if no fileTarget is set. + Default file link target. Used by :ref:`typolink` if no fileTarget is set. @@ -914,25 +789,18 @@ forceAbsoluteUrls .. versionadded:: 12.1 -.. container:: table-row - - Property - forceAbsoluteUrls - - Data type - :ref:`data-type-boolean` +.. confval:: forceAbsoluteUrls + :name: config-forceAbsoluteUrls + :Data type: :ref:`data-type-boolean` + :Default: `0` - Default - 0 + If this option is set, all links, reference to images or assets + previously built with a relative or absolute path (for example, + :file:`/fileadmin/my-pdf.pdf`) will be rendered as absolute URLs + with the site prefix / current domain. - Description - If this option is set, all links, reference to images or assets - previously built with a relative or absolute path (for example, - :file:`/fileadmin/my-pdf.pdf`) will be rendered as absolute URLs - with the site prefix / current domain. - - Examples for such use cases are the generation of a complete static - version of a TYPO3 site for sending a page via email. + Examples for such use cases are the generation of a complete static + version of a TYPO3 site for sending a page via email. .. note:: Setting this option will override any setting in :ref:`config.absRefPrefix @@ -946,21 +814,16 @@ forceAbsoluteUrls forceTypeValue -------------- -.. container:: table-row - - Property - forceTypeValue - - Data type - :ref:`data-type-integer` +.. confval:: forceTypeValue + :name: config-forceTypeValue + :Data type: :ref:`data-type-boolean` - Description - Force the `&type` value of all TYPO3 generated links to a specific value - (except if overruled by local :typoscript:`forceTypeValue` values). + Force the `&type` value of all TYPO3 generated links to a specific value + (except if overruled by local :typoscript:`forceTypeValue` values). - Useful if you run a template with special content at - say `&type=95` - - but still wants to keep your targets neutral. Then you set your - targets to blank and this value to the type value you wish. + Useful if you run a template with special content at - say `&type=95` - + but still wants to keep your targets neutral. Then you set your + targets to blank and this value to the type value you wish. @@ -970,20 +833,13 @@ forceTypeValue headerComment ------------- -.. container:: table-row - - Property - headerComment - - Data type - :ref:`data-type-string` - - Description - The content is added before the "TYPO3 Content Management Framework" - comment in the section of the page. Use this to insert a note - like that "Programmed by My-Agency". - +.. confval:: headerComment + :name: config-headerComment + :Data type: :ref:`data-type-string` + The content is added before the "TYPO3 Content Management Framework" + comment in the section of the page. Use this to insert a note + like that "Programmed by My-Agency". .. index:: config; htmlTag.attributes .. _setup-config-htmltag-attributes: @@ -991,50 +847,48 @@ headerComment htmlTag.attributes ------------------ -.. container:: table-row +.. confval:: htmlTag.attributes + :name: config-htmlTag-attributes + :Data type: array - Property - htmlTag.attributes + Sets the attributes for the :html:`` tag on the page. Allows to override + and add custom attributes via TypoScript without having to re-add the + existing attributes generated by SiteHandling. - Data type - array + This property supersedes the previous :typoscript:`config.htmlTag_setParams` option by providing + a more flexible API to add attributes. - Description - Sets the attributes for the :html:`` tag on the page. Allows to override - and add custom attributes via TypoScript without having to re-add the - existing attributes generated by SiteHandling. +Example +~~~~~~~ - This property supersedes the previous :typoscript:`config.htmlTag_setParams` option by providing - a more flexible API to add attributes. +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - Example - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript + config.htmlTag.attributes.class = no-js - config.htmlTag.attributes.class = no-js +Results in : - Results in : +.. code-block:: html + :caption: Example output - .. code-block:: html - :caption: Example output + - +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript + config.htmlTag.attributes.amp = - config.htmlTag.attributes.amp = +Results in : - Results in : +.. code-block:: html + :caption: Example output - .. code-block:: html - :caption: Example output - - + .. warning:: - If you are using :typoscript:`htmlTag.attributes` the property :ref:`setup-config-htmltag-setparams` will not have any effect. + If you are using :typoscript:`htmlTag.attributes` the property + :ref:`setup-config-htmltag-setparams` will not have any effect. .. note:: Please note that the `lang` attribute in these examples are auto-generated by @@ -1048,34 +902,33 @@ htmlTag.attributes htmlTag\_setParams ------------------ -.. container:: table-row - - Property - htmlTag\_setParams +.. confval:: htmlTag_setParams + :name: config-htmlTag-setParams + :Data type: :ref:`data-type-string` - Data type - :ref:`data-type-string` + Sets the attributes for the :html:`` tag on the page. If you set + :ref:`setup-config-doctype` to a keyword enabling XHTML then some attributes are + already set. This property allows you to override any preset + attributes with your own content if needed. - Description - Sets the attributes for the :html:`` tag on the page. If you set - :ref:`setup-config-doctype` to a keyword enabling XHTML then some attributes are - already set. This property allows you to override any preset - attributes with your own content if needed. + **Special:** If you set it to "none" then no attributes will be set at + any event. - **Special:** If you set it to "none" then no attributes will be set at - any event. +Example +~~~~~~~ - Example - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - config.htmlTag_setParams = xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" + config.htmlTag_setParams = xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" -.. warning:: - If you are using `htmlTag.attributes` this property (`htmlTag_setParams`) will not have any effect. +.. warning:: + If you are using `htmlTag.attributes` this property (`htmlTag_setParams`) + will not have any effect. -.. note:: - Used to older TYPO3 versions? If you are using :ref:`site handling` you do not need to set +.. note:: + Used to older TYPO3 versions? If you are using + :ref:`site handling` you do not need to set `htmlTag_setParams` for language related configuration in TypoScript. @@ -1085,19 +938,12 @@ htmlTag\_setParams htmlTag\_stdWrap ---------------- -.. container:: table-row - - Property - htmlTag\_stdWrap - - Data type - :ref:`stdwrap` - - Description - Modify the whole :html:`` tag with stdWrap functionality. This can be - used to extend or override this tag. - +.. confval:: htmlTag_stdWrap + :name: config-htmlTag-stdWrap + :Data type: :ref:`stdwrap` + Modify the whole :html:`` tag with stdWrap functionality. This can be + used to extend or override this tag. .. index:: config; index_descrLgd .. _setup-config-index-descrlgd: @@ -1105,22 +951,13 @@ htmlTag\_stdWrap index\_descrLgd --------------- -.. container:: table-row - - Property - index\_descrLgd - - Data type - :ref:`data-type-integer` - - Default - 200 - - Description - This indicates how many chars to preserve as description for an - indexed page. This may be used in the search result display. - +.. confval:: index_descrLgd + :name: config-index-descrLgd + :Data type: :ref:`data-type-integer` + :Default: `200` + This indicates how many chars to preserve as description for an + indexed page. This may be used in the search result display. .. index:: config; index_enable .. _setup-config-index-enable: @@ -1128,18 +965,13 @@ index\_descrLgd index\_enable ------------- -.. container:: table-row - - Property - index\_enable - - Data type - :ref:`data-type-boolean` +.. confval:: index_enable + :name: config-index-enable + :Data type: :ref:`data-type-boolean` - Description - Enables cached pages to be indexed. + Enables cached pages to be indexed. - Automatically enabled when EXT:indexed_search is enabled. + Automatically enabled when :t3-ext:`indexed_search` is enabled. @@ -1149,18 +981,13 @@ index\_enable index\_externals ---------------- -.. container:: table-row +.. confval:: index_externals + :name: config-index-externals + :Data type: :ref:`data-type-boolean` - Property - index\_externals + If set, external media linked to on the pages is indexed as well. - Data type - :ref:`data-type-boolean` - - Description - If set, external media linked to on the pages is indexed as well. - - Automatically enabled when EXT:indexed_search is enabled. + Automatically enabled when :t3-ext:`indexed_search` is enabled. @@ -1170,20 +997,13 @@ index\_externals index\_metatags --------------- -.. container:: table-row - - Property - index\_metatags +.. confval:: index_metatags + :name: config-index-metatags + :Data type: :ref:`data-type-boolean` + :Default: `true` - Data type - :ref:`data-type-boolean` - - Default - true - - Description - This allows to turn on or off the indexing of metatags. It is turned - on by default. + This allows to turn on or off the indexing of metatags. It is turned + on by default. @@ -1193,31 +1013,24 @@ index\_metatags inlineStyle2TempFile -------------------- -.. container:: table-row - - Property - inlineStyle2TempFile - - Data type - :ref:`data-type-boolean` +.. confval:: inlineStyle2TempFile + :name: config-inlineStyle2TempFile + :Data type: :ref:`data-type-boolean` + :Default: `1` - Default - 1 + If set, the inline styles TYPO3 controls in the core are written to a + file, :file:`typo3temp/assets/css/stylesheet\_[hashstring].css`, and the header + will only contain the link to the stylesheet. - Description - If set, the inline styles TYPO3 controls in the core are written to a - file, :file:`typo3temp/assets/css/stylesheet\_[hashstring].css`, and the header - will only contain the link to the stylesheet. - - The file hash is based solely on the content of the styles. - - Example - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript + The file hash is based solely on the content of the styles. - config.inlineStyle2TempFile = 0 +Example +~~~~~~~ +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript + config.inlineStyle2TempFile = 0 .. index:: config; intTarget .. _setup-config-inttarget: @@ -1225,16 +1038,11 @@ inlineStyle2TempFile intTarget --------- -.. container:: table-row +.. confval:: intTarget + :name: config-intTarget + :Data type: target - Property - intTarget - - Data type - target - - Description - Default internal target. Used by typolink if no target is set + Default internal target. Used by :ref:`typolink` if no target is set. .. index:: config; linkVars @@ -1243,60 +1051,56 @@ intTarget linkVars -------- -.. container:: table-row +.. confval:: linkVars + :name: config-linkVars + :Data type: list - Property - linkVars + :php:`HTTP_GET_VARS`, which should be passed on with links in TYPO3. This + is compiled into a string stored in :php:`$GLOBALS['TSFE']->linkVars` - Data type - list + The values are rawurlencoded in PHP. - Description - :php:`HTTP_GET_VARS`, which should be passed on with links in TYPO3. This - is compiled into a string stored in :php:`$GLOBALS['TSFE']->linkVars` + You can specify a range of valid values by appending a () after each + value. If this range does not match, the variable won't be appended to + links. This is very important to prevent that the cache system gets + flooded with forged values. - The values are rawurlencoded in PHP. + The range may contain one of these values: - You can specify a range of valid values by appending a () after each - value. If this range does not match, the variable won't be appended to - links. This is very important to prevent that the cache system gets - flooded with forged values. + `[a]-[b]` + A range of allowed integer values + `int` + Only integer values are allowed + `[a]\|[b]\|[c]` + A list of allowed strings (whitespaces will be removed) + `/[regex]/` + Match against a regular expression (PCRE style) - The range may contain one of these values: + You can use the pipe character (|) to access nested properties. - - **[a]-[b]** -A range of allowed integer values + .. note:: - - **int** -Only integer values are allowed + Do **not** include the `type` and `L` parameter in the linkVars + list, as this will result in unexpected behavior. - - **[a]\|[b]\|[c]** -A list of allowed strings (whitespaces will be - removed) +Examples +~~~~~~~~ - - **/[regex]/** -Match against a regular expression (PCRE style) +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - You can use the pipe character (|) to access nested properties. + config.linkVars = print - .. note:: +This will add `&print=[print-value]` to all links in TYPO3. - Do **not** include the `type` and `L` parameter in the linkVars - list, as this will result in unexpected behavior. - - Examples - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - config.linkVars = print - - This will add `&print=[print-value]` to all links in - TYPO3. - - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript + config.linkVars = tracking|green(0-5) - config.linkVars = tracking|green(0-5) - - With the above configuration the following example GET parameters will - be kept: `&tracking[green]=3`. But a get parameter like - `tracking[blue]` will not be kept. +With the above configuration the following example GET parameters will +be kept: `&tracking[green]=3`. But a get parameter like +`tracking[blue]` will not be kept. .. index:: config; message_preview @@ -1305,17 +1109,12 @@ linkVars message\_preview ---------------- -.. container:: table-row - - Property - message\_preview - - Data type - :ref:`data-type-string` +.. confval:: message_preview + :name: config-message_preview + :Data type: :ref:`data-type-string` - Description - Alternative message in HTML that appears when the preview function is - active. + Alternative message in HTML that appears when the preview function is + active. @@ -1325,26 +1124,22 @@ message\_preview message\_preview\_workspace --------------------------- -.. container:: table-row - - Property - message\_preview\_workspace - - Data type - :ref:`data-type-string` +.. confval:: message_preview_workspace + :name: config-message-preview-workspace + :Data type: :ref:`data-type-string` - Description - Alternative message in HTML that appears when the preview function is - active in a draft workspace. You can use sprintf() placeholders for - Workspace title (first) and number (second). + Alternative message in HTML that appears when the preview function is + active in a draft workspace. You can use sprintf() placeholders for + Workspace title (first) and number (second). - Examples - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript + Examples + ~~~~~~~~ - config.message_preview_workspace =
Displaying workspace named "%s" (number %s)!
- config.message_preview_workspace =
Displaying workspace number %2$s named "%1$s"!
+ .. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript + config.message_preview_workspace =
Displaying workspace named "%s" (number %s)!
+ config.message_preview_workspace =
Displaying workspace number %2$s named "%1$s"!
.. _setup-config-metacharset: @@ -1368,19 +1163,13 @@ by TYPO3 Core anymore. moveJsFromHeaderToFooter ------------------------ -.. container:: table-row - - Property - moveJsFromHeaderToFooter - - Data type - :ref:`data-type-boolean` - - Description - If set, all JavaScript (includes and inline) will be moved to the - bottom of the HTML document, which is after the content and before the - closing body tag. +.. confval:: moveJsFromHeaderToFooter + :name: config-moveJsFromHeaderToFooter + :Data type: :ref:`data-type-boolean` + If set, all JavaScript (includes and inline) will be moved to the + bottom of the HTML document, which is after the content and before the + closing body tag. .. index:: config; MP_defaults @@ -1389,30 +1178,28 @@ moveJsFromHeaderToFooter MP\_defaults ------------ -.. container:: table-row - - Property - MP\_defaults +.. confval:: MP_defaults + :name: config-MP-defaults + :Data type: :ref:`data-type-string` - Data type - :ref:`data-type-string` + Allows you to set a list of page id numbers which will always have a + certain "&MP=..." parameter added. - Description - Allows you to set a list of page id numbers which will always have a - certain "&MP=..." parameter added. + .. code-block:: plaintext + :caption: Syntax - **Syntax:** + [id],[id],... : [MP-var] \| [id],[id],... : [MP-var] \| ... - [id],[id],... : [MP-var] \| [id],[id],... : [MP-var] \| ... +Example +~~~~~~~ - Example - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - config.MP_defaults = 36,37,48 : 2-207 + config.MP_defaults = 36,37,48 : 2-207 - This will by default add `&MP=2-207` to all links pointing to pages - 36,37 and 48. +This will by default add `&MP=2-207` to all links pointing to pages +36,37 and 48. @@ -1422,19 +1209,12 @@ MP\_defaults MP\_disableTypolinkClosestMPvalue --------------------------------- -.. container:: table-row - - Property - MP\_disableTypolinkClosestMPvalue - - Data type - :ref:`data-type-boolean` - - Description - If set, the typolink function will not try to find the closest MP - value for the id. - +.. confval:: MP_disableTypolinkClosestMPvalue + :name: config-MP-disableTypolinkClosestMPvalue + :Data type: :ref:`data-type-boolean` + If set, the :ref:`typolink` function will not try to find the closest MP + value for the id. .. index:: config; MP_mapRootPoints .. _setup-config-mp-maprootpoints: @@ -1442,32 +1222,26 @@ MP\_disableTypolinkClosestMPvalue MP\_mapRootPoints ----------------- -.. container:: table-row - - Property - MP\_mapRootPoints +.. confval:: MP_mapRootPoints + :name: config-MP-mapRootPoints + :Data type: list of PIDs / :ref:`data-type-string` - Data type - list of PIDs / :ref:`data-type-string` + Defines a list of ID numbers from which the MP-vars are automatically + calculated for the branch. - Description - Defines a list of ID numbers from which the MP-vars are automatically - calculated for the branch. + The result is used just like :ref:`MP\_defaults ` are used to + find MP-vars if none has been specified prior to the call to + `\TYPO3\CMS\Frontend\Typolink\PageLinkBuilder`. - The result is used just like :ref:`MP\_defaults ` are used to - find MP-vars if none has been specified prior to the call to - `\TYPO3\CMS\Frontend\Typolink\PageLinkBuilder`. + You can specify `root` as a special keyword in the list of IDs and + that will create a map-tree for the whole site (but this may be VERY + processing intensive if there are many pages!). - You can specify `root` as a special keyword in the list of IDs and - that will create a map-tree for the whole site (but this may be VERY - processing intensive if there are many pages!). - - The order of IDs specified may have a significance; Any ID in a branch - which is processed already (by a previous ID root point) will not be - processed again. - - The configured IDs have to be the uids of Mount Point pages itself, not the targets. + The order of IDs specified may have a significance; Any ID in a branch + which is processed already (by a previous ID root point) will not be + processed again. + The configured IDs have to be the uids of Mount Point pages itself, not the targets. .. index:: config; namespaces @@ -1476,35 +1250,31 @@ MP\_mapRootPoints namespaces ---------- -.. container:: table-row - Property - namespaces +.. confval:: namespaces + :name: config-namespaces + :Data type: *(array of strings)* - Data type - *(array of strings)* + This property enables you to add xml namespaces (xmlns) to the :html:`` + tag. This is especially useful if you want to add RDFa or microformats + to your HTML. - Description - This property enables you to add xml namespaces (xmlns) to the :html:`` - tag. This is especially useful if you want to add RDFa or microformats - to your HTML. +Example +~~~~~~~ - Example - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - config.namespaces.dc = http://purl.org/dc/elements/1.1/ - config.namespaces.foaf = http://xmlns.com/foaf/0.1/ + config.namespaces.dc = http://purl.org/dc/elements/1.1/ + config.namespaces.foaf = http://xmlns.com/foaf/0.1/ - This configuration will result in an :html:`` tag like: - - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - - +This configuration will result in an :html:`` tag like: +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript + .. index:: config; no_cache .. _setup-config-no-cache: @@ -1512,27 +1282,25 @@ namespaces no\_cache --------- -.. container:: table-row - - Property - no\_cache +.. confval:: no_cache + :name: config-no-cache + :Data type: :ref:`data-type-boolean` + :Default: `0` - Data type - :ref:`data-type-boolean` + If this is set to `1`, it disables the `pages` cache, meaning that the + rendered result/response will not be saved to cache. - Default - 0 + If set to `0`, it's ignored. Rendered result (e.g. full html of a page) + is stored in the `pages` cache. - Description - If this is set to 1, it disables the `pages` cache, meaning that the rendered result/response - will not be saved to cache. - If set to 0, it's ignored. Rendered result (e.g. full html of a page) is stored in the `pages` cache. - Other parameters may have set it to true for other reasons. - Note that setting this to 1 doesn't disable other TYPO3 caches. - Instead of setting `config.no_cache` you might consider changing dynamic (non-cacheable) content - from USER to USER_INT (COA to COA_INT) - For more information about cache types see :ref:`cache types chapter `. + Other parameters may have set it to true for other reasons. + Note that setting this to `1` doesn't disable other TYPO3 caches. + Instead of setting `config.no_cache` you might consider changing dynamic + (non-cacheable) content from :ref:`USER ` to :ref:`USER_INT ` + (:ref:`COA ` to :ref:`COA_INT`). + For more information about cache types see + :ref:`cache types chapter `. .. index:: config; noPageTitle @@ -1541,25 +1309,18 @@ no\_cache noPageTitle ----------- -.. container:: table-row +.. confval:: noPageTitle + :name: config-noPageTitle + :Data type: :ref:`data-type-integer` + :Default: `0` - Property - noPageTitle + If you only want to have the site name (from the template record) in + your :html:`` tag, set this to 1. If the value is 2 then the :html:`<title>` + tag is not printed at all. - Data type - :ref:`data-type-integer` - - Default - 0 - - Description - If you only want to have the site name (from the template record) in - your :html:`<title>` tag, set this to 1. If the value is 2 then the :html:`<title>` - tag is not printed at all. - - Please take note that this tag is required for (X)HTML compliant - output, so you should only disable this tag if you generate it - manually already. + Please take note that this tag is required for (X)HTML compliant + output, so you should only disable this tag if you generate it + manually already. .. index:: config; pageRendererTemplateFile @@ -1568,26 +1329,22 @@ noPageTitle pageRendererTemplateFile ------------------------ -.. container:: table-row - - Property - pageRendererTemplateFile +.. confval:: pageRendererTemplateFile + :name: config-pageRendererTemplateFile + :Data type: :ref:`data-type-string` + :Default: file:`EXT:core/Resources/Private/Templates/PageRenderer.html` - Data type - :ref:`data-type-string` - Default - :file:`EXT:core/Resources/Private/Templates/PageRenderer.html` + Sets the template for page renderer class + :php:`TYPO3\CMS\Core\Page\PageRenderer`. - Description - Sets the template for page renderer class - :php:`TYPO3\CMS\Core\Page\PageRenderer`. +Example +~~~~~~~ - Example - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - pageRendererTemplateFile = fileadmin/test_pagerender.html + pageRendererTemplateFile = EXT:my_extension/Ressources/Private/Templates/TestPagerender.html .. index:: config; pageTitle @@ -1596,19 +1353,12 @@ pageRendererTemplateFile pageTitle --------- -.. container:: table-row - - Property - pageTitle - - Data type - :ref:`stdwrap` - - Description - stdWrap for the page title. This option will be executed *after* all - other processing options like :ref:`setup-config-pageTitleFirst`. - +.. confval:: pageTitle + :name: config-pageTitle + :Data type: :ref:`stdwrap` + stdWrap for the page title. This option will be executed *after* all + other processing options like :ref:`setup-config-pageTitleFirst`. .. index:: config; pageTitleFirst .. _setup-config-pagetitlefirst: @@ -1616,24 +1366,17 @@ pageTitle pageTitleFirst -------------- -.. container:: table-row - - Property - pageTitleFirst - - Data type - :ref:`data-type-boolean` - - Default - 0 +.. confval:: pageTitleFirst + :name: config-pageTitleFirst + :Data type: :ref:`data-type-boolean` + :Default: `0` - Description - TYPO3 by default prints a title tag in the format "website: page - title". + TYPO3 by default prints a title tag in the format "website: page + title". - If :typoscript:`pageTitleFirst` is set (and if the page title is printed), then the - page title will be printed IN FRONT OF the template title. So it will - look like "page title: website". + If :typoscript:`pageTitleFirst` is set (and if the page title is printed), then the + page title will be printed IN FRONT OF the template title. So it will + look like "page title: website". @@ -1643,46 +1386,45 @@ pageTitleFirst pageTitleProviders ------------------ -.. container:: table-row +.. confval:: pageTitleProviders + :name: config-pageTitleProviders + :Data type: array - Property - pageTitleProviders + In order to keep setting the titles in control, an API to set the page title is available. The API uses + :typoscript:`PageTitleProviders` to define the page title based on page record and the content on the page. - Data type - array + Based on the priority of the providers, the :php:`PageTitleProviderManager` will check the providers if a title + is given by the provider. It will start with the highest priority :typoscript:`PageTitleProviders` and will end with + the lowest in priority. - Description - In order to keep setting the titles in control, an API to set the page title is available. The API uses - :typoscript:`PageTitleProviders` to define the page title based on page record and the content on the page. +Examples +~~~~~~~~ - Based on the priority of the providers, the :php:`PageTitleProviderManager` will check the providers if a title - is given by the provider. It will start with the highest priority :typoscript:`PageTitleProviders` and will end with - the lowest in priority. +By default, TYPO3 ships with two providers: - Examples - By default, TYPO3 ships with two providers: +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - - config.pageTitleProviders { - record { - provider = TYPO3\CMS\Core\PageTitle\RecordPageTitleProvider - } - seo { - provider = TYPO3\CMS\Seo\PageTitle\SeoTitlePageTitleProvider - before = record - } - } + config.pageTitleProviders { + record { + provider = TYPO3\CMS\Core\PageTitle\RecordPageTitleProvider + } + seo { + provider = TYPO3\CMS\Seo\PageTitle\SeoTitlePageTitleProvider + before = record + } + } - The ordering of the providers is based on the :typoscript:`before` and :typoscript:`after` parameters. If you want a provider - to be handled before a specific other provider, set that provider in the :typoscript:`before`, do the same with - :typoscript:`after`. +The ordering of the providers is based on the :typoscript:`before` and +:typoscript:`after` parameters. If you want a provider +to be handled before a specific other provider, set that provider in +the :typoscript:`before`, do the same with :typoscript:`after`. - .. note:: - The :typoscript:`seo` PageTitleProvider is only available with installed SEO system extension. +.. note:: + The :typoscript:`seo` PageTitleProvider is only available with installed SEO system extension. - You can find information about creating own PageTitleProviders in the section :ref:`PageTitle API <t3coreapi:pagetitle>`. +You can find information about creating own PageTitleProviders in the section +:ref:`PageTitle API <t3coreapi:pagetitle>`. @@ -1692,61 +1434,56 @@ pageTitleProviders pageTitleSeparator ------------------ -.. container:: table-row +.. confval:: pageTitleSeparator + :name: config-pageTitleSeparator + :Data type: array + :Default: `:` *(colon with following space)* - Property - pageTitleSeparator + The signs which should be printed in the title tag between the website + name and the page title. If :typoscript:`pageTitleSeparator` is set, but *no* + sub-properties are defined, then a space will be added to the end of the + separator. stdWrap is useful to adjust whitespaces at the beginning and + the end of the separator. - Data type - :ref:`data-type-string` / :ref:`stdwrap` +Examples +~~~~~~~~ - Default - : *(colon with following space)* +This produces a title tag with the content "website . page title": - Description - The signs which should be printed in the title tag between the website - name and the page title. If :typoscript:`pageTitleSeparator` is set, but *no* - sub-properties are defined, then a space will be added to the end of the - separator. stdWrap is useful to adjust whitespaces at the beginning and - the end of the separator. +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - Examples - This produces a title tag with the content "website . page title": + config.pageTitleSeparator = . - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript +This produces a title tag with the content "website - page title": - config.pageTitleSeparator = . +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - This produces a title tag with the content "website - page title": + config.pageTitleSeparator = - + config.pageTitleSeparator.noTrimWrap = | | | - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - - config.pageTitleSeparator = - - config.pageTitleSeparator.noTrimWrap = | | | +This produces a title tag with the content "website*page title": - This produces a title tag with the content "website*page title": +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript + config.pageTitleSeparator = * + config.pageTitleSeparator.noTrimWrap = ||| - config.pageTitleSeparator = * - config.pageTitleSeparator.noTrimWrap = ||| +If you want to remove the web page title from the displayed title, choose a separator that is not included in the web page title. +Then split the title from that character and return the second part only: - If you want to remove the web page title from the displayed title, choose a separator that is not included in the web page title. - Then split the title from that character and return the second part only: +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - - config.pageTitleSeparator = * - config.pageTitle.stdWrap { - split { - token = * - returnKey = 1 - } - } + config.pageTitleSeparator = * + config.pageTitle.stdWrap { + split { + token = * + returnKey = 1 + } + } .. _setup-config-recordLinks: @@ -1755,8 +1492,7 @@ recordLinks ----------- .. confval:: recordLinks - :name: setup-config-recordLinks - + :name: config-recordLinks :Data Type: array of link configurations .. code-block:: typoscript @@ -1782,21 +1518,14 @@ recordLinks removeDefaultCss ---------------- -.. container:: table-row - - Property - removeDefaultCss - - Data type - :ref:`data-type-boolean` - - Description - Remove CSS generated by :ref:`\_CSS\_DEFAULT\_STYLE - <setup-plugin-css-default-style>` configuration of extensions. - (:typoscript:`_CSS_DEFAULT_STYLE` outputs a set of default styles, just because - an extension is installed.) - +.. confval:: removeDefaultCss + :name: config-removeDefaultCss + :Data Type: :ref:`data-type-boolean` + Remove CSS generated by :ref:`\_CSS\_DEFAULT\_STYLE + <setup-plugin-css-default-style>` configuration of extensions. + (:typoscript:`_CSS_DEFAULT_STYLE` outputs a set of default styles, just because + an extension is installed.) .. index:: config; removeDefaultJS .. _setup-config-removedefaultjs: @@ -1804,32 +1533,26 @@ removeDefaultCss removeDefaultJS --------------- -.. container:: table-row +.. confval:: removeDefaultJS + :name: config-removeDefaultJS + :Data Type: :ref:`data-type-boolean` / :ref:`data-type-string` - Property - removeDefaultJS + If set, the default JavaScript in the header will be removed. - Data type - :ref:`data-type-boolean` / :ref:`data-type-string` + The default JavaScript is the decryption function for email addresses. - Default - external + **Special case:** If the value is the string `external`, then the default + JavaScript is written to a temporary file and included from that file. + See :ref:`setup-config-inlineStyle2TempFile`. - Description - If set, the default JavaScript in the header will be removed. +Examples +~~~~~~~~ - The default JavaScript is the decryption function for email addresses. +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - **Special case:** If the value is "**external**", then the default - JavaScript is written to a temporary file and included from that file. - See :ref:`setup-config-inlineStyle2TempFile`. - - Examples - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - - config.removeDefaultJS = external - config.removeDefaultJS = 1 + config.removeDefaultJS = external + config.removeDefaultJS = 1 .. index:: config; sendCacheHeaders @@ -1838,59 +1561,54 @@ removeDefaultJS sendCacheHeaders ---------------- -.. container:: table-row - - Property - sendCacheHeaders - - Data type - :ref:`data-type-boolean` +.. confval:: sendCacheHeaders + :name: config-sendCacheHeaders + :Data Type: :ref:`data-type-boolean` - Description - If set, TYPO3 will output cache-control headers to the client based - mainly on whether the page was cached internally. This feature allows - client browsers and/or reverse proxies to take load off TYPO3 - websites. + If set, TYPO3 will output cache-control headers to the client based + mainly on whether the page was cached internally. This feature allows + client browsers and/or reverse proxies to take load off TYPO3 + websites. - The conditions for allowing client caching are: + The conditions for allowing client caching are: - - page was cached + - page was cached - - No \*\_INT or \*\_EXT objects were on the page (e.g. :ref:`cobj-user`) + - No \*\_INT or \*\_EXT objects were on the page (e.g. :ref:`cobj-user`) - - No frontend user is logged in + - No frontend user is logged in - - No backend user is logged in + - No backend user is logged in - If these conditions are met, the headers sent are: + If these conditions are met, the headers sent are: - - Last-Modified [SYS\_LASTCHANGED of page id] + - Last-Modified [SYS\_LASTCHANGED of page id] - - Expires [expire time of page cache] + - Expires [expire time of page cache] - - ETag [md5 of content] + - ETag [md5 of content] - - Cache-Control: max-age: [seconds til expiretime] + - Cache-Control: max-age: [seconds til expiretime] - - Pragma: public + - Pragma: public - In case caching is not allowed, these headers are sent to avoid client - caching: + In case caching is not allowed, these headers are sent to avoid client + caching: - - Cache-Control: private, no-store + - Cache-Control: private, no-store - Notice that enabling the browser caches means you have to consider how - log files are written. Because when a page is cached on the client it - will not invoke a request to the webserver, thus not writing the - request to the log. There should be ways to circumvent these problems - but they are outside the domain of TYPO3 in any case. + Notice that enabling the browser caches means you have to consider how + log files are written. Because when a page is cached on the client it + will not invoke a request to the webserver, thus not writing the + request to the log. There should be ways to circumvent these problems + but they are outside the domain of TYPO3 in any case. - **Tip:** Enabling cache-control headers might confuse editors seeing - old content served from the browser cache. "Shift-Reload" will bypass - both browser- and reverse-proxy caches and even make TYPO3 regenerate - the page. Teach them that trick! + **Tip:** Enabling cache-control headers might confuse editors seeing + old content served from the browser cache. "Shift-Reload" will bypass + both browser- and reverse-proxy caches and even make TYPO3 regenerate + the page. Teach them that trick! - Thanks to Ole Tange, www.forbrug.dk for co-authoring this feature. + Thanks to Ole Tange, www.forbrug.dk for co-authoring this feature. .. index:: config; showWebsiteTitle @@ -1901,24 +1619,17 @@ showWebsiteTitle .. versionadded:: 12.0 -.. container:: table-row - - Property - showWebsiteTitle - - Data type - :ref:`data-type-boolean` - - Default - 1 +.. confval:: showWebsiteTitle + :name: config-showWebsiteTitle + :Data Type: :ref:`data-type-boolean` + :Default: 1 - Description - The option can be used to specify whether the website title defined in - the :ref:`site configuration <t3coreapi:sitehandling>` should be added - to the page title (used for the :html:`<title>` tag, for example). + The option can be used to specify whether the website title defined in + the :ref:`site configuration <t3coreapi:sitehandling>` should be added + to the page title (used for the :html:`<title>` tag, for example). - By default, the website title is added. To omit the website title, the - option has to be set to `0`. + By default, the website title is added. To omit the website title, the + option has to be set to `0`. .. index:: config; spamProtectEmailAddresses @@ -1927,30 +1638,26 @@ showWebsiteTitle spamProtectEmailAddresses ------------------------- -.. container:: table-row +.. confval:: spamProtectEmailAddresses + :name: config-spamProtectEmailAddresses + :Data Type: `-10` to `10` - Property - spamProtectEmailAddresses + If set, then all email addresses in typolinks will be encrypted so + that it is harder for spam bots to detect them. - Data type - `-10` to `10` + If you set this value to a number, then the encryption is an + offset of character values. If you set this value to "-2" then all + characters will have their ASCII value offset by "-2". To make this + possible, a little JavaScript code is added to every generated web + page! - Description - If set, then all email addresses in typolinks will be encrypted so - that it is harder for spam bots to detect them. + (It is recommended to set the value in the range from -5 to 1 since + setting it to >= 2 means a "z" is converted to "\|" which is a special + character in TYPO3 tables syntax – and that might confuse columns in + tables.) - If you set this value to a number, then the encryption is an - offset of character values. If you set this value to "-2" then all - characters will have their ASCII value offset by "-2". To make this - possible, a little JavaScript code is added to every generated web - page! - - (It is recommended to set the value in the range from -5 to 1 since - setting it to >= 2 means a "z" is converted to "\|" which is a special - character in TYPO3 tables syntax – and that might confuse columns in - tables.) - - It is required to enable the default JavaScript and not disable it. (see :ref:`removeDefaultJS <setup-config-removedefaultjs>`) + It is required to enable the default JavaScript and not disable it. + (see :ref:`removeDefaultJS <setup-config-removedefaultjs>`) .. index:: config; spamProtectEmailAddresses_atSubst @@ -1959,19 +1666,12 @@ spamProtectEmailAddresses spamProtectEmailAddresses\_atSubst ---------------------------------- -.. container:: table-row - - Property - spamProtectEmailAddresses\_atSubst +.. confval:: spamProtectEmailAddresses_atSubst + :name: config-spamProtectEmailAddresses-atSubst + :Data Type: :ref:`data-type-string` + :Default: `(at)` - Data type - :ref:`data-type-string` - - Default - (at) - - Description - Substitute label for the at-sign (@). + Substitute label for the at-sign (`@`). .. index:: config; spamProtectEmailAddresses_lastDotSubst @@ -1980,22 +1680,20 @@ spamProtectEmailAddresses\_atSubst spamProtectEmailAddresses\_lastDotSubst --------------------------------------- -.. container:: table-row - - Property - spamProtectEmailAddresses\_lastDotSubst +.. confval:: spamProtectEmailAddresses_lastDotSubst + :name: config-spamProtectEmailAddresses-lastDotSubst + :Data Type: :ref:`data-type-string` + :Default: `.` *(just a simple dot)* - Data type - :ref:`data-type-string` + Substitute label for the last dot in the email address. - Default - . *(just a simple dot)* +Example +~~~~~~~ - Description - Substitute label for the last dot in the email address. +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - Example - (dot) + config.spamProtectEmailAddresses_lastDotSubst = (dot) .. index:: config; Extension configuration @@ -2004,27 +1702,24 @@ spamProtectEmailAddresses\_lastDotSubst tx\_[extension key with no underscores]\_[\*] --------------------------------------------- -.. container:: table-row +.. confval:: tx_[extension key with no underscores]_[*] + :name: config-tx-extension-key-with-no-underscores + :Data Type: array - Property - tx\_[extension key with no underscores]\_[\*] + Configuration space for extensions. This can be used – for example – + by plugins that need some TypoScript configuration, but that don't + actually display anything in the frontend (i.e. don't receive their + configuration as an argument from the frontend rendering process). - Data type - array +Example +~~~~~~~ - Description - Configuration space for extensions. This can be used – for example – - by plugins that need some TypoScript configuration, but that don't - actually display anything in the frontend (i.e. don't receive their - configuration as an argument from the frontend rendering process). +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - Example - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - - config.tx_realurl_enable = 1 - config.tx_myextension.width = 10 - config.tx_myextension.length = 20 + config.tx_realurl_enable = 1 + config.tx_myextension.width = 10 + config.tx_myextension.length = 20 @@ -2034,46 +1729,51 @@ tx\_[extension key with no underscores]\_[\*] typolinkLinkAccessRestrictedPages --------------------------------- -.. container:: table-row +.. confval:: typolinkLinkAccessRestrictedPages + :name: config-typolinkLinkAccessRestrictedPages + :Data Type: :ref:`data-type-integer` (page id) / keyword "NONE" - Property - typolinkLinkAccessRestrictedPages + If set, typolinks pointing to access restricted pages will still link + to the page even though the page cannot be accessed. If the value of + this setting is an integer it will be interpreted as a page id to + which the link will be directed. - Data type - :ref:`data-type-integer` (page id) / keyword "NONE" + If the value is :typoscript:`NONE` the original link to the page will be kept + although it will generate a page-not-found situation (which can of + course be picked up properly by the page-not-found handler and present + a nice login form). - Description - If set, typolinks pointing to access restricted pages will still link - to the page even though the page cannot be accessed. If the value of - this setting is an integer it will be interpreted as a page id to - which the link will be directed. + See :ref:`menu-common-properties-showaccessrestrictedpages` + for menu objects as well (similar feature for menus) - If the value is :typoscript:`NONE` the original link to the page will be kept - although it will generate a page-not-found situation (which can of - course be picked up properly by the page-not-found handler and present - a nice login form). - See :ref:`menu-common-properties-showaccessrestrictedpages` - for menu objects as well (similar feature for menus) +.. index:: config; typolinkLinkAccessRestrictedPages.ATagParams +.. _setup-config-typolinklinkaccessrestrictedpages-ATagParams: - **Property:** +typolinkLinkAccessRestrictedPages.ATagParams +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - .. versionadded:: 12.3 +.. versionadded:: 12.3 - **.ATagParams**: Add custom attributes to the anchor tag. +.. confval:: typolinkLinkAccessRestrictedPages.ATagParams + :name: config-typolinkLinkAccessRestrictedPages-ATagParams + :Data Type: :ref:`data-type-string` - Example - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript + `typolinkLinkAccessRestrictedPages.ATagParams` Add custom attributes to the anchor tag. + +Example +~~~~~~~ - config.typolinkLinkAccessRestrictedPages = 29 - config.typolinkLinkAccessRestrictedPages.ATagParams = class="restricted" - config.typolinkLinkAccessRestrictedPages_addParams = &return_url=###RETURN_URL###&pageId=###PAGE_ID### +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/TypoScript/setup.typoscript - Will create a link to page with id 29 and add GET parameters where the - return URL and original page id is a part of it. Additionally, a CSS - class "restricted" is added to the anchor tag. + config.typolinkLinkAccessRestrictedPages = 29 + config.typolinkLinkAccessRestrictedPages.ATagParams = class="restricted" + config.typolinkLinkAccessRestrictedPages_addParams = &return_url=###RETURN_URL###&pageId=###PAGE_ID### +Will create a link to page with id 29 and add GET parameters where the +return URL and original page id is a part of it. Additionally, a CSS +class "restricted" is added to the anchor tag. .. index:: config; typolinkLinkAccessRestrictedPages_addParams @@ -2082,16 +1782,11 @@ typolinkLinkAccessRestrictedPages typolinkLinkAccessRestrictedPages\_addParams -------------------------------------------- -.. container:: table-row +.. confval:: typolinkLinkAccessRestrictedPages_addParams + :name: config-typolinkLinkAccessRestrictedPages-addParams + :Data Type: :ref:`data-type-string` - Property - typolinkLinkAccessRestrictedPages\_addParams - - Data type - :ref:`data-type-string` - - Description - See :ref:`setup-config-typolinklinkaccessrestrictedpages` above. + See :ref:`setup-config-typolinklinkaccessrestrictedpages` above. .. index:: config; xmlprologue @@ -2100,35 +1795,27 @@ typolinkLinkAccessRestrictedPages\_addParams xmlprologue ----------- -.. container:: table-row - - Property - xmlprologue - - Data type - :ref:`data-type-string` - - Description - If empty (not set) then the default XML 1.0 prologue is set, when the - doctype is set to a known keyword (e.g. :typoscript:`xhtml_11`): - - .. code-block:: none - :caption: Output - - <?xml version="1.0" encoding="utf-8"> - - If set to one of the following keywords then a standard prologue will - be set: - - **xml\_10:** XML 1.0 prologue (see above) - **xml\_11:** XML 1.1 prologue +.. confval:: typolinkLinkAccessRestrictedPages_xmlprologue + :name: config-typolinkLinkAccessRestrictedPages-xmlprologue + :Data Type: :ref:`data-type-string` - **none:** The default XML prologue is *not* set. + If empty (not set) then the default XML 1.0 prologue is set, when the + doctype is set to a known keyword (e.g. :typoscript:`xhtml_11`): - Any other string is used as the XML prologue itself. + .. code-block:: none + :caption: Output + <?xml version="1.0" encoding="utf-8"> + If set to one of the following keywords then a standard prologue will + be set: + `xml_10:` + XML 1.0 prologue (see above) + `xml_11:` + XML 1.1 prologue + `none:` + The default XML prologue is *not* set. -.. ###### END~OF~TABLE ###### + Any other string is used as the XML prologue itself.