Zitat von
dhe
Der Nachteil von folderpage ist der Umstand, dass alle "Ordner" den Flag unsichtbar fest in der Klasse gesetzt bekommen und demnach nicht im Menü sichtbar sind (inkl. aller Unterseiten)
In Contao 4 kannst du folgendes in die app/Resources/contao/dca/tl_page.php einfügen:
PHP-Code:
$GLOBALS['TL_DCA']['tl_page']['palettes']['folder'] = str_replace(',guests', ',hide,guests', $GLOBALS['TL_DCA']['tl_page']['palettes']['folder']);
$GLOBALS['TL_DCA']['tl_page']['config']['onsubmit_callback'][] = function(\Contao\DataContainer $dc)
{
if (null === $dc->activeRecord || 'folder' !== $dc->activeRecord->type) {
return;
}
\Contao\System::getContainer()->get('database_connection')->update(
'tl_page', ['hide' => $dc->activeRecord->hide], ['id' => $dc->id]
);
};
und dann folgendes nav_default.html5 Template verwenden:
PHP-Code:
<ul class="<?= $this->level ?>">
<?php foreach ($this->items as $item): ?>
<?php if ('folder' == $item['type']): ?>
<?php $item['class'].= ' folder'; ?>
<li class="<?= $item['class'] ?>"><span class="<?= $item['class'] ?>"<?php if (!empty($item['subitems'])) echo ' aria-haspopup="true"'; ?> itemprop="name"><?= $item['link'] ?></span><?= $item['subitems'] ?></li>
<?php elseif ($item['isActive']): ?>
<li class="<?= $item['class'] ?>"><strong class="<?= $item['class'] ?>"<?php if (!empty($item['subitems'])) echo ' aria-haspopup="true"'; ?> itemprop="name"><?= $item['link'] ?></strong><?= $item['subitems'] ?></li>
<?php else: ?>
<li<?php if ($item['class']) echo ' class="' . $item['class'] . '"'; ?>><a href="<?= $item['href'] ?: './' ?>" title="<?= $item['pageTitle'] ?: $item['title'] ?>"<?php if ($item['class']) echo ' class="' . $item['class'] . '"'; ?><?php if ($item['accesskey']) echo ' accesskey="' . $item['accesskey'] . '"'; ?><?php if ($item['tabindex']) echo ' tabindex="' . $item['tabindex'] . '"'; ?><?php if ($item['nofollow']) echo ' rel="nofollow"'; ?><?= $item['target'] ?><?php if (!empty($item['subitems'])) echo ' aria-haspopup="true"'; ?> itemprop="url"><span itemprop="name"><?= $item['link'] ?></span></a><?= $item['subitems'] ?></li>
<?php endif; ?>
<?php endforeach; ?>
</ul>
Lesezeichen