From 2aa5f07da5418ddb320c2a39a4e96fb644362eb0 Mon Sep 17 00:00:00 2001 From: "lina.wolf" Date: Sat, 13 Apr 2024 06:53:32 +0200 Subject: [PATCH 1/4] [TASK] Switch to confvals for mod.web_layout * use confvals * correct indentation * correct header levels * Give headers to examples No other text changes made releases: main, 12.4, 11.5 --- Documentation/PageTsconfig/Mod/WebLayout.rst | 443 ++++++++++--------- 1 file changed, 233 insertions(+), 210 deletions(-) diff --git a/Documentation/PageTsconfig/Mod/WebLayout.rst b/Documentation/PageTsconfig/Mod/WebLayout.rst index c24628b9..0c0f91ba 100644 --- a/Documentation/PageTsconfig/Mod/WebLayout.rst +++ b/Documentation/PageTsconfig/Mod/WebLayout.rst @@ -1,9 +1,9 @@ -.. include:: /Includes.rst.txt +.. include:: /Includes.rst.txt -.. index:: - mod; web_layout - Modules; Page -.. _pagewebpage: +.. index:: + mod; web_layout + Modules; Page +.. _pagewebpage: ========== web_layout @@ -11,317 +11,340 @@ web_layout Configuration options of the "Web > Page" module. -.. contents:: - :local: +.. contents:: + :local: -.. index:: - Localization; Inconsistent language mode - Localization; Independently translated content - allowInconsistentLanguageHandling +.. index:: + Localization; Inconsistent language mode + Localization; Independently translated content + allowInconsistentLanguageHandling + +.. _mod-web-layout-allowInconsistentLanguageHandling: allowInconsistentLanguageHandling ================================= -:aspect:`Datatype` - boolean +.. confval:: allowInconsistentLanguageHandling + :name: mod-web-layout-allowInconsistentLanguageHandling + :type: boolean + + By default, TYPO3 will not allow you to mix translated content and independent content in the page module. + Content elements violating this behavior will be marked in the page module and there is no UI control (yet) + allowing you to create independent content elements in a given language. + + If you want to go back to the old, inconsistent behavior, you can toggle it back on using this switch. + +.. _mod-web-layout-allowInconsistentLanguageHandling-example: -:aspect:`Description` - By default, TYPO3 will not allow you to mix translated content and independent content in the page module. - Content elements violating this behavior will be marked in the page module and there is no UI control (yet) - allowing you to create independent content elements in a given language. +Example: Allow inconsistent language modes +------------------------------------------ - If you want to go back to the old, inconsistent behavior, you can toggle it back on using this switch. +Allows to set TYPO3s page module back to inconsistent language mode -:aspect:`Example` - Allows to set TYPO3s page module back to inconsistent language mode +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/page.tsconfig - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/page.tsconfig + mod.web_layout.allowInconsistentLanguageHandling = 1 - mod.web_layout.allowInconsistentLanguageHandling = 1 +.. index:: BackendLayouts -.. index:: BackendLayouts +.. _mod-web-layout-backendLayouts: BackendLayouts ============== -:aspect:`Datatype` - array +.. confval:: BackendLayouts + :name: mod-web-layout-BackendLayouts + :type: array -:aspect:`Description` - Allows to define backend layouts via Page TSconfig directly, without using database records. + Allows to define backend layouts via Page TSconfig directly, without using database records. -:aspect:`Example` - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/page.tsconfig +.. _mod-web-layout-backendLayouts-example: - mod.web_layout.BackendLayouts { - exampleKey { +Example: Define a backend layout +-------------------------------- + +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/page.tsconfig + + mod.web_layout.BackendLayouts { + exampleKey { title = Example icon = EXT:example_extension/Resources/Public/Images/BackendLayouts/default.gif config { - backend_layout { - colCount = 1 - rowCount = 2 - rows { - 1 { - columns { - 1 { - name = LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:colPos.I.3 - colPos = 3 - colspan = 1 - } + backend_layout { + colCount = 1 + rowCount = 2 + rows { + 1 { + columns { + 1 { + name = LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:colPos.I.3 + colPos = 3 + colspan = 1 + } + } } + 2 { + columns { + 1 { + name = Main + colPos = 0 + colspan = 1 + } + } + } + } } - 2 { - columns { - 1 { - name = Main - colPos = 0 - colspan = 1 - } - } - } - } - } - } - } - } - - -.. index:: - defaultLanguageLabel - Localization; Default language label + } + } + } + +.. index:: + defaultLanguageLabel + Localization; Default language label + +.. _mod-web-layout-defaultLanguageLabel: defaultLanguageLabel ==================== -:aspect:`Datatype` - string +.. warning:: -:aspect:`Description` - Alternate label for "Default" when language labels are shown in the interface. + Note that this option has largely been superseded by site configuration since **TYPO3 v10** and will only + work in the Backend for a "NullSite". For instance, a global sysfolder in the page tree without an + attached site configuration. Once a page tree has a site configuration, the default language label is + set from the site configuration's language settings and this option will have no effect at all. - Overrides the same property from :ref:`mod.SHARED ` if set. +.. confval:: defaultLanguageLabel + :name: mod-web-layout-defaultLanguageLabel + :type: string -.. warning:: + Alternate label for "Default" when language labels are shown in the interface. - Note that this option has largely been superseded by site configuration since **TYPO3 v10** and will only - work in the Backend for a "NullSite". For instance, a global sysfolder in the page tree without an - attached site configuration. Once a page tree has a site configuration, the default language label is - set from the site configuration's language settings and this option will have no effect at all. + Overrides the same property from :ref:`mod.SHARED ` if set. +.. index:: + defLangBinding + Localization; Show default content element -.. index:: - defLangBinding - Localization; Show default content element +.. _mod-web-layout-defLangBinding: defLangBinding ============== -:aspect:`Datatype` - boolean +.. confval:: defLangBinding + :name: mod-web-layout-defLangBinding + :type: boolean + :Default: false -:aspect:`Description` - If set, translations of content elements are bound to the default record in the display. This means that - within each column with content elements any translation found for exactly the shown default content - element will be shown in the language column next to. + If set, translations of content elements are bound to the default record in the display. This means that + within each column with content elements any translation found for exactly the shown default content + element will be shown in the language column next to. - This display mode should be used depending on how the frontend is configured to display localization. - The frontend must display localized pages by selecting the default content elements and for each - one overlay with a possible translation if found. + This display mode should be used depending on how the frontend is configured to display localization. + The frontend must display localized pages by selecting the default content elements and for each + one overlay with a possible translation if found. -:aspect:`Default` - 0 +.. index:: + hideRestrictedCols + Page columns; Hide restricted -.. index:: - hideRestrictedCols - Page columns; Hide restricted +.. _mod-web-layout-hideRestrictedCols: hideRestrictedCols ================== -:aspect:`Datatype` - boolean +.. confval:: hideRestrictedCols + :name: mod-web-layout-hideRestrictedCols + :type: boolean + :Default: false -:aspect:`Description` - If activated, only columns will be shown in the backend that the editor is - allowed to access. All columns with access restriction are hidden in that case. + If activated, only columns will be shown in the backend that the editor is + allowed to access. All columns with access restriction are hidden in that case. - By default columns with restricted access are rendered with a message - telling *that* the user doesn't have access. This may be useless and - distracting or look repelling. Instead, all columns an editor doesn't have - access to can be hidden: + By default columns with restricted access are rendered with a message + telling *that* the user doesn't have access. This may be useless and + distracting or look repelling. Instead, all columns an editor doesn't have + access to can be hidden: - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/page.tsconfig + .. code-block:: typoscript + :caption: EXT:site_package/Configuration/page.tsconfig - mod.web_layout.hideRestrictedCols = 1 + mod.web_layout.hideRestrictedCols = 1 - .. attention:: + .. attention:: - This setting will break your layout if you are using backend layouts. + This setting will break your layout if you are using backend layouts. -:aspect:`Default` - false +.. index:: + localization.enableCopy + Localization; Free mode + Localization; Copy content elements -.. index:: - localization.enableCopy - Localization; Free mode - Localization; Copy content elements +.. _mod-web-layout-localization-enableCopy: localization.enableCopy ======================= -:aspect:`Datatype` - boolean +.. confval:: localization.enableCopy + :name: mod-web-layout-localization-enableCopy + :type: boolean + :Default: true + + Enables the creation of copies of content elements into languages in the translation wizard ("free mode"). +.. _mod-web-layout-localization-enableCopy-example: -:aspect:`Description` - Enables the creation of copies of content elements into languages in the translation wizard ("free mode"). +Example: Disable free mode button for localization +-------------------------------------------------- -:aspect:`Default` - 1 +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/page.tsconfig -:aspect:`Example` - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/page.tsconfig + mod.web_layout { + localization.enableCopy = 0 + } - mod.web_layout { - localization.enableCopy = 0 - } +.. index:: + localization.enableTranslate + Localization; Connected mode + Localization; Translate content elements -.. index:: - localization.enableTranslate - Localization; Connected mode - Localization; Translate content elements +.. _mod-web-layout-localization-enableTranslate: localization.enableTranslate -~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +============================ -:aspect:`Datatype` - boolean +.. confval:: localization.enableTranslate + :name: mod-web-layout-localization-enableTranslate + :type: boolean + :Default: true -:aspect:`Description` - Enables simple translations of content elements in the translation wizard ("connected mode"). + Enables simple translations of content elements in the translation wizard ("connected mode"). -:aspect:`Default` - 1 +.. _mod-web-layout-localization-enableTranslate-example: -:aspect:`Example` - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/page.tsconfig +Example: Disable "connected mode" button for translation +-------------------------------------------------------- - mod.web_layout { - localization.enableTranslate = 0 - } +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/page.tsconfig + mod.web_layout { + localization.enableTranslate = 0 + } -.. index:: - web_layout.menu.functions - Module menu; Pages -.. _pageblindingfunctionmenuoptions-weblayout: +.. index:: + web_layout.menu.functions + Module menu; Pages +.. _pageblindingfunctionmenuoptions-weblayout: menu.functions -~~~~~~~~~~~~~~ +============== -:aspect:`Datatype` - array +.. confval:: menu.functions + :name: mod-web-layout-menu-functions + :type: array -:aspect:`Description` - Disable elements of the "Function selector" in the document header of the module. + Disable elements of the "Function selector" in the document header of the module. - .. figure:: /Images/ManualScreenshots/Page/FunctionMenuPageModule.png - :alt: The function menu of the Page module + .. figure:: /Images/ManualScreenshots/Page/FunctionMenuPageModule.png + :alt: The function menu of the Page module - The function keys are numerical: + The function keys are numerical: - Columns - 1 - Languages - 2 + Columns + 1 + Languages + 2 - .. warning:: + .. warning:: - Blinding Function Menu items is not hardcore access control! All it - does is hide the possibility of accessing that module functionality - from the interface. It might be possible for users to hack their way - around it and access the functionality anyways. You should use the - option of blinding elements mostly to remove otherwise distracting options. + Blinding Function Menu items is not hardcore access control! All it + does is hide the possibility of accessing that module functionality + from the interface. It might be possible for users to hack their way + around it and access the functionality anyways. You should use the + option of blinding elements mostly to remove otherwise distracting options. +.. _pageblindingfunctionmenuoptions-weblayout-example: -:aspect:`Example` - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/page.tsconfig +Example: Disable "Languages" from the function menu +--------------------------------------------------- - # Disables "Languages" from function menu - mod.web_layout.menu.functions { - 2 = 0 - } +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/page.tsconfig + # Disables "Languages" from function menu + mod.web_layout.menu.functions { + 2 = 0 + } -.. index:: - noCreateRecordsLink - Buttons; Create new record + +.. index:: + noCreateRecordsLink + Buttons; Create new record noCreateRecordsLink -~~~~~~~~~~~~~~~~~~~ +=================== + +.. confval:: noCreateRecordsLink + :name: mod-web-layout-noCreateRecordsLink + :type: boolean + :Default: false -:aspect:`Datatype` - boolean + If set, the link in the bottom of the page, "Create new record", is hidden. -:aspect:`Description` - If set, the link in the bottom of the page, "Create new record", is hidden. +.. index:: + preview + Content elements; Preview definition +.. _pageweblayoutpreview: -:aspect:`Default` - 0 +tt_content.preview +================== +.. confval:: tt_content.preview + :name: mod-web-layout-preview + :type: boolean -.. index:: - preview - Content elements; Preview definition -.. _pageweblayoutpreview: + It is possible to render previews of your own content elements in the page module. + By referencing a Fluid template you can create a visual representation of your content element, + making it easier for an editor to understand what is going on on the page. -preview -~~~~~~~ + The syntax is as follows: -:aspect:`Datatype` - string + .. code-block:: typoscript + :caption: EXT:site_package/Configuration/page.tsconfig -:aspect:`Description` - It is possible to render previews of your own content elements in the page module. - By referencing a Fluid template you can create a visual representation of your content element, - making it easier for an editor to understand what is going on on the page. + mod.web_layout.tt_content.preview.[CTYPE].[list_type value] = EXT:site_mysite/Resources/Private/Templates/Preview/ExamplePlugin.html - The syntax is as follows: + This way you can even switch between previews for your plugins by supplying `list` as CType. - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/page.tsconfig + .. note:: - mod.web_layout.tt_content.preview.[CTYPE].[list_type value] = EXT:site_mysite/Resources/Private/Templates/Preview/ExamplePlugin.html + This only works, if there is no hook registered for this content type, you may want to check this + section in the :guilabel:`System > Configuration` module: - This way you can even switch between previews for your plugins by supplying `list` as CType. + .. code-block:: php + :caption: Search for registrations of this hook - .. note:: + $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['cms/layout/class.tx_cms_layout.php'] + ['tt_content_drawItem']['content_element_xy']; - This only works, if there is no hook registered for this content type, you may want to check this - section in the :guilabel:`System > Configuration` module: - .. code-block:: php - :caption: Search for registrations of this hook +.. _pageweblayoutpreview-example: - $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['cms/layout/class.tx_cms_layout.php'] - ['tt_content_drawItem']['content_element_xy']; +Example: Define previews for custom content elements +---------------------------------------------------- -:aspect:`Example` - .. code-block:: typoscript - :caption: EXT:site_package/Configuration/page.tsconfig +.. code-block:: typoscript + :caption: EXT:site_package/Configuration/page.tsconfig - mod.web_layout.tt_content { - preview.custom_ce = EXT:site_mysite/Resources/Private/Templates/Preview/CustomCe.html - preview.table = EXT:site_mysite/Resources/Private/Templates/Preview/Table.html - preview.list.tx_news = EXT:site_mysite/Resources/Private/Templates/Preview/TxNews.html - } + mod.web_layout.tt_content { + preview.custom_ce = EXT:site_mysite/Resources/Private/Templates/Preview/CustomCe.html + preview.table = EXT:site_mysite/Resources/Private/Templates/Preview/Table.html + preview.list.tx_news = EXT:site_mysite/Resources/Private/Templates/Preview/TxNews.html + } From 4457b09b3852bd45c987963ef138ca94a0ba366d Mon Sep 17 00:00:00 2001 From: Lina Wolf <48202465+linawolf@users.noreply.github.com> Date: Sun, 14 Apr 2024 10:46:21 +0200 Subject: [PATCH 2/4] Update Documentation/PageTsconfig/Mod/WebLayout.rst MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Chris Müller <2566282+brotkrueml@users.noreply.github.com> --- Documentation/PageTsconfig/Mod/WebLayout.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Documentation/PageTsconfig/Mod/WebLayout.rst b/Documentation/PageTsconfig/Mod/WebLayout.rst index 0c0f91ba..9bfde138 100644 --- a/Documentation/PageTsconfig/Mod/WebLayout.rst +++ b/Documentation/PageTsconfig/Mod/WebLayout.rst @@ -307,7 +307,7 @@ tt_content.preview ================== .. confval:: tt_content.preview - :name: mod-web-layout-preview + :name: mod-web-layout-tt-content-preview :type: boolean It is possible to render previews of your own content elements in the page module. From 4a88c0a83d04c0622ba2f2fe15fbaf15cdad939c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 13 Apr 2024 06:55:22 +0200 Subject: [PATCH 3/4] [TASK] Switch to confvals for mod.web_layout * use confvals * correct indentation * correct header levels * Give headers to examples No other text changes made releases: main, 12.4, 11.5 --- Documentation/PageTsconfig/Mod/WebLayout.rst | 36 ++----------------- .../Mod/_backendLayouts-example.tsconfig | 32 +++++++++++++++++ 2 files changed, 34 insertions(+), 34 deletions(-) create mode 100644 Documentation/PageTsconfig/Mod/_backendLayouts-example.tsconfig diff --git a/Documentation/PageTsconfig/Mod/WebLayout.rst b/Documentation/PageTsconfig/Mod/WebLayout.rst index 9bfde138..074c1fc5 100644 --- a/Documentation/PageTsconfig/Mod/WebLayout.rst +++ b/Documentation/PageTsconfig/Mod/WebLayout.rst @@ -65,42 +65,10 @@ BackendLayouts Example: Define a backend layout -------------------------------- -.. code-block:: typoscript +.. literalinclude:: _backendLayouts-example.tsconfig + :language: typoscript :caption: EXT:site_package/Configuration/page.tsconfig - mod.web_layout.BackendLayouts { - exampleKey { - title = Example - icon = EXT:example_extension/Resources/Public/Images/BackendLayouts/default.gif - config { - backend_layout { - colCount = 1 - rowCount = 2 - rows { - 1 { - columns { - 1 { - name = LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:colPos.I.3 - colPos = 3 - colspan = 1 - } - } - } - 2 { - columns { - 1 { - name = Main - colPos = 0 - colspan = 1 - } - } - } - } - } - } - } - } - .. index:: defaultLanguageLabel Localization; Default language label diff --git a/Documentation/PageTsconfig/Mod/_backendLayouts-example.tsconfig b/Documentation/PageTsconfig/Mod/_backendLayouts-example.tsconfig new file mode 100644 index 00000000..46ed1d57 --- /dev/null +++ b/Documentation/PageTsconfig/Mod/_backendLayouts-example.tsconfig @@ -0,0 +1,32 @@ +mod.web_layout.BackendLayouts { + exampleKey { + title = Example + icon = EXT:example_extension/Resources/Public/Images/BackendLayouts/default.gif + config { + backend_layout { + colCount = 1 + rowCount = 2 + rows { + 1 { + columns { + 1 { + name = LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:colPos.I.3 + colPos = 3 + colspan = 1 + } + } + } + 2 { + columns { + 1 { + name = Main + colPos = 0 + colspan = 1 + } + } + } + } + } + } + } +} \ No newline at end of file From 7ec2255ea85037b63bf289a6d869995f4f17829e Mon Sep 17 00:00:00 2001 From: Lina Wolf <48202465+linawolf@users.noreply.github.com> Date: Mon, 15 Apr 2024 10:45:40 +0200 Subject: [PATCH 4/4] Apply suggestions from code review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Chris Müller <2566282+brotkrueml@users.noreply.github.com> --- Documentation/PageTsconfig/Mod/WebLayout.rst | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Documentation/PageTsconfig/Mod/WebLayout.rst b/Documentation/PageTsconfig/Mod/WebLayout.rst index 074c1fc5..c357f064 100644 --- a/Documentation/PageTsconfig/Mod/WebLayout.rst +++ b/Documentation/PageTsconfig/Mod/WebLayout.rst @@ -105,7 +105,7 @@ defLangBinding .. confval:: defLangBinding :name: mod-web-layout-defLangBinding :type: boolean - :Default: false + :Default: 0 If set, translations of content elements are bound to the default record in the display. This means that within each column with content elements any translation found for exactly the shown default content @@ -160,7 +160,7 @@ localization.enableCopy .. confval:: localization.enableCopy :name: mod-web-layout-localization-enableCopy :type: boolean - :Default: true + :Default: 1 Enables the creation of copies of content elements into languages in the translation wizard ("free mode"). @@ -190,7 +190,7 @@ localization.enableTranslate .. confval:: localization.enableTranslate :name: mod-web-layout-localization-enableTranslate :type: boolean - :Default: true + :Default: 1 Enables simple translations of content elements in the translation wizard ("connected mode"). @@ -262,7 +262,7 @@ noCreateRecordsLink .. confval:: noCreateRecordsLink :name: mod-web-layout-noCreateRecordsLink :type: boolean - :Default: false + :Default: 0 If set, the link in the bottom of the page, "Create new record", is hidden.