ModifyPageLayoutContentEvent¶
New in version 12.0
This event serves as a replacement for the removed hooks:
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['cms/layout/db_layout.php']['drawHeaderHook']
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['cms/layout/db_layout.php']['drawFooterHook']
The PSR-14 event \TYPO3\CMS\Backend\Controller\Event\ModifyPageLayoutContentEvent
allows to modify page module content.
It is possible to add additional content, overwrite existing content or reorder the content.
Example¶
Registration of the event listener in the extension's Services.yaml
:
services:
# Place here the default dependency injection configuration
MyVendor\MyExtension\Backend\EventListener\MyEventListener:
tags:
- name: event.listener
identifier: 'my-extension/backend/modify-page-module-content'
Read how to configure dependency injection in extensions.
The corresponding event listener class:
<?php
declare(strict_types=1);
namespace MyVendor\MyExtension\Backend\EventListener;
use TYPO3\CMS\Backend\Controller\Event\ModifyPageLayoutContentEvent;
final class MyEventListener
{
public function __invoke(ModifyPageLayoutContentEvent $event): void
{
// Get the current page ID
$id = (int)($event->getRequest()->getQueryParams()['id'] ?? 0);
$event->addHeaderContent('Additional header content');
$event->setFooterContent('Overwrite footer content');
}
}
API¶
- class \TYPO3\CMS\Backend\Controller\Event\ ModifyPageLayoutContentEvent¶
-
Listeners to this Event will be able to modify the header and footer content of the page module
- getRequest ( ) ¶
-
- returntype
-
Psr\Http\Message\ServerRequestInterface
- getModuleTemplate ( ) ¶
-
- returntype
-
TYPO3\CMS\Backend\Template\ModuleTemplate
- setHeaderContent ( string $content) ¶
-
Set content for the header. Can also be used to e.g. reorder existing content.
IMPORTANT: This overwrites existing content from previous listeners!
- param string $content
-
the content
- addHeaderContent ( string $content) ¶
-
Add additional content to the header
- param string $content
-
the content
- getHeaderContent ( ) ¶
-
- returntype
-
string
-
Set content for the footer. Can also be used to e.g. reorder existing content.
IMPORTANT: This overwrites existing content from previous listeners!
- param string $content
-
the content
-
Add additional content to the footer
- param string $content
-
the content
-
- returntype
-
string