Feature: #106232 - Provide record title tag provider

See forge#106232

Description

The class \TYPO3\CMS\Core\PageTitle\RecordTitleProvider is a new page title provider with the identifier recordTitle which is called before \TYPO3\CMS\Core\PageTitle\SeoTitlePageTitleProvider with the TypoScript identifier seo.

This provider can be used by 3rd party extensions to set the page title.

my_extension/Classes/Controller/ItemController.php
use MyVendor\MyExtension\Domain\Model\Item;
use Psr\Http\Message\ResponseInterface;
use TYPO3\CMS\Extbase\Mvc\Controller\ActionController;
use TYPO3\CMS\Core\PageTitle\RecordTitleProvider;

final class ItemController extends ActionController
{
    public function __construct(
        private readonly RecordTitleProvider $recordTitleProvider
    ) {
    }

    public function showAction(Item $item): ResponseInterface
    {
        $this->recordTitleProvider->setTitle($item->getTitle());
        $this->view->assign('item', $item);
        return $this->htmlResponse();
    }
}
Copied!

Impact

Ease the life of extension developers by providing a dedicated provider instead of forcing them to provide a provider in every extension.