75 lines
2.0 KiB
ReStructuredText
75 lines
2.0 KiB
ReStructuredText
.. include:: /Includes.rst.txt
|
|
|
|
.. _deprecation-89718:
|
|
|
|
==============================================================
|
|
Deprecation: #89718 - Legacy PageTSconfig parsing lowlevel API
|
|
==============================================================
|
|
|
|
See :issue:`89718`
|
|
|
|
Description
|
|
===========
|
|
|
|
Two new PHP API classes for retrieving and parsing TsConfig are
|
|
introduced:
|
|
|
|
- :php:`TYPO3\CMS\Core\Configuration\Loader\PageTsConfigLoader`
|
|
- :php:`TYPO3\CMS\Core\Configuration\Parser\PageTsConfigParser`
|
|
|
|
As this API is more consistent, and flexible, as well as agnostic
|
|
of the current Context of backend or frontend, the following
|
|
functionality has been marked as deprecated:
|
|
|
|
- :php:`TYPO3\CMS\Core\Configuration\TsConfigParser`
|
|
- :php:`TYPO3\CMS\Backend\Utility\BackendUtility::getRawPagesTSconfig()`
|
|
|
|
|
|
Impact
|
|
======
|
|
|
|
Instantiating the PHP class or the mentioned PHP method will trigger
|
|
a deprecation message.
|
|
|
|
|
|
Affected Installations
|
|
======================
|
|
|
|
TYPO3 Installations with extensions using the lowlevel API for handling PageTSconfig.
|
|
|
|
|
|
Migration
|
|
=========
|
|
|
|
Loading and parsing PageTSconfig on a low-level should be done via the new PHP classes:
|
|
|
|
- :php:`TYPO3\CMS\Core\Configuration\Loader\PageTsConfigLoader`
|
|
- :php:`TYPO3\CMS\Core\Configuration\Parser\PageTsConfigParser`
|
|
|
|
Usages for fetching all available PageTS of a page/rootline in one large string:
|
|
|
|
.. code-block:: php
|
|
|
|
$loader = GeneralUtility::makeInstance(PageTsConfigLoader::class);
|
|
$tsConfigString = $loader->load($rootLine);
|
|
|
|
|
|
The string is parsed (and conditions are applied) with the Parser:
|
|
|
|
.. code-block:: php
|
|
|
|
$parser = GeneralUtility::makeInstance(
|
|
PageTsConfigParser::class,
|
|
$typoScriptParser,
|
|
$hashCache
|
|
);
|
|
$pagesTSconfig = $parser->parse(
|
|
$tsConfigString,
|
|
$conditionMatcher
|
|
);
|
|
|
|
Extension developers should rely on this syntax rather than
|
|
on :php:`$GLOBALS['TSFE']->getPagesTSconfig()` or :php:`BackendUtility::getPagesTsConfig()`, or the deprecated method / class.
|
|
|
|
.. index:: PHP-API, TSConfig, FullyScanned, ext:core
|