40 lines
1.7 KiB
PHP
40 lines
1.7 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
declare(strict_types=1);
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Abteilungs-Auswahl: gleichwertige Karten, die auf Anker derselben Seite springen.
|
||
|
|
* Props:
|
||
|
|
* $choice array{title?, intro?, items: [{kicker?, title, text, label, anchor}]}
|
||
|
|
* $anchor string (optional, Sektions-ID)
|
||
|
|
* Bewusst eigenes <a href="#…">-Markup (nicht die cta-Komponente): cta() schickt
|
||
|
|
* jeden Slug durch url() und würde aus "#anker" ein "/#anker" (Startseite) machen.
|
||
|
|
*/
|
||
|
|
$anchor = $anchor ?? null;
|
||
|
|
if (empty($choice['items'])) {
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
?>
|
||
|
|
<section class="section department-choice"<?= $anchor ? ' id="' . e($anchor) . '"' : '' ?>>
|
||
|
|
<div class="container">
|
||
|
|
<?php if (!empty($choice['title'])): ?>
|
||
|
|
<h2 class="department-choice__title"><?= e($choice['title']) ?></h2>
|
||
|
|
<?php endif; ?>
|
||
|
|
<?php if (!empty($choice['intro'])): ?>
|
||
|
|
<p class="department-choice__intro"><?= e($choice['intro']) ?></p>
|
||
|
|
<?php endif; ?>
|
||
|
|
<ul class="department-choice__grid" role="list">
|
||
|
|
<?php foreach ($choice['items'] as $item): ?>
|
||
|
|
<li class="department-choice__card">
|
||
|
|
<h3 class="department-choice__heading"><?= e($item['title']) ?></h3>
|
||
|
|
<?php if (!empty($item['subtitle'])): ?>
|
||
|
|
<p class="department-choice__subtitle"><?= e($item['subtitle']) ?></p>
|
||
|
|
<?php endif; ?>
|
||
|
|
<p class="department-choice__text"><?= e($item['text']) ?></p>
|
||
|
|
<a class="btn department-choice__btn" href="#<?= e($item['anchor']) ?>"><?= e($item['label']) ?><?= icon('arrow-right', 'department-choice__arrow') ?></a>
|
||
|
|
</li>
|
||
|
|
<?php endforeach; ?>
|
||
|
|
</ul>
|
||
|
|
</div>
|
||
|
|
</section>
|