Usage¶
Include static template¶
First you have to include the static template "Extension Page Title" in your
template record. This registers the page title provider. As default, this page
title provider is called before the record page title provider. You can change
this via TypoScript, just look into the
Configuration/TypoScript/setup.typoscript
file.
Set the page title in your extension¶
In your extension, e.g. in the show action of an Extbase controller, just insert these two lines of code:
$titleProvider = GeneralUtility::makeInstance(\Brotkrueml\Extpagetitle\PageTitle\ExtensionPageTitleProvider::class);
$titleProvider->setTitle($yourPageTitle);
Since TYPO3 v10 LTS you should use dependency injection to inject the class into your controller:
use Brotkrueml\Extpagetitle\PageTitle\ExtensionPageTitleProvider;
final class FooController extends ActionController
{
private ExtensionPageTitleProvider $pageTitleProvider;
public function __construct(ExtensionPageTitleProvider $pageTitleProvider) {
$this->pageTitleProvider = $pageTitleProvider;
}
public function showAction(Foo $foo): void
{
$this->pageTitleProvider->setTitle($foo->getTitle());
}
}