Feature: #82213 - New hook to determine if content record is used/unused
See forge#82213
Description
A new hook has been added to the Page
class, determining whether a
content record is used or not. The hook allows third party code to change the
$used
parameter by returning a boolean, thus changing which content records
are shown in the "unused content elements" section of the backend page module.
Impact
Without providing an own hook, content elements with an colPos not defined within the current backend layout are marked as unused. You have to register and provide an own PHP class checking if an content record is used within your configuration.
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['cms/layout/class.tx_cms_layout.php']['record_is_used']['myExt'] =
MyExt\MyExt\Hooks\PageLayoutViewHook::class . '->contentIsUsed';
Copied!
namespace MyExt\MyExt\Hooks;
use TYPO3\CMS\Backend\View\PageLayoutView;
class PageLayoutViewHook
{
public function contentIsUsed(array $params, PageLayoutView $parentObject): bool
{
if ($params['used']) {
return true;
}
$record = $params['record'];
return $record['colPos'] === 999 && !empty($record['tx_myext_content_parent']);
}
}
Copied!