[FEATURE] Allow to override htmlTag attributes
[Packages/TYPO3.CMS.git] / typo3 / sysext / core / Documentation / Changelog / 9.5.x / Feature-87033-NewTypoScriptPropertyConfightmlTagattributes.rst
1 .. include:: ../../Includes.txt
2
3 ===================================================================
4 Feature: #87033 - New TypoScript Property config.htmlTag.attributes
5 ===================================================================
6
7 See :issue:`87033`
8
9 Description
10 ===========
11
12 The new site handling functionality adds some attributes to the frontend rendering <html> tag automatically, even per language
13 (e.g. "lang" and "dir" attributes) without having to use TypoScript anymore.
14
15 However, if custom properties should be added, e.g. `<html lang="fr" amp>`, this is not possible anymore without having
16 to reintroduce TypoScript conditions or complex stdWrap functionality. In previous versions the property `config.htmlTag_setParams`
17 was used to override all properties, but since there were conditions in place for languages, this was a one-liner change per language.
18
19 In order to use the full power of TypoScript flexibility, it is possible now to use `config.htmlTag.attributes` which
20 allows to override and add custom attributes via TypoScript without having to re-add the existing attributes generated by SiteHandling.
21
22 This property supersedes the previous `config.htmlTag_setParams` option by providing a more flexible API to add attributes.
23
24 Examples:
25
26 - :ts:`config.htmlTag.attributes.class = no-js`
27
28 Will result in `<html lang="fr" class="no-js">`.
29
30 It is even possible to add attributes without a value:
31
32 `config.htmlTag.attributes.amp = `
33
34 will render `<html lang="it" amp>`
35
36 Please note that "lang" attribute in these examples are auto-generated by Site configuration, depending on the value added there.
37
38
39 Impact
40 ======
41
42 If the TypoScript option `config.htmlTag.attributes` is used, then `config.htmlTag_setParams` has no effect anymore.
43
44 .. index:: TypoScript, ext:frontend, NotScanned