Hi! I need to define a new menu item type. As a link I need to use the URL to the file set in theme.yaml field e.g. cookies_file (mediafinder).
Something like this doesn’t work:
Event::listen('pages.menuitem.listTypes', function () {
return [
'cookies-file' => 'Cookie Policy File',
];
});
Event::listen('pages.menuitem.getTypeInfo', function ($type) {
if ($type === 'cookies-file') {
return [
'dynamicItems' => false,
];
}
});
Event::listen('pages.menuitem.resolveItem', function ($type, $item, $url, $theme) {
if ($type === 'cookies-file') {
$theme = \Cms\Classes\Theme::getActiveTheme();
$rodoUrl = '';
if (!empty($theme->cookies_file )) {
$rodoUrl = $theme->cookies_file;
}
return [
'url' => url($rodoUrl),
'isActive' => false,
'title' => 'Test',
];
}
});
What am I doing wrong?