Files
tsv08kulmbach-website/app/pages/verein.php
fs adf142b18e Feinschliff: Navigation, Hero-Center, Personen-Karten & Tokens
Querschnitt-Verbesserungen ohne eigenes Feature:
- Navigation: Untermenü-Trenner (separator) + Mitmachen-Link, rote Akzent-Leiste
- Startseiten-Hero zentriert (align center, ohne Hero-CTAs); .hero--center-Styles
- person-card/person-grid: Kontakt-Layout, 3-Spalten-Raster (Startseite)
- jsonld: geo aus club.json; cta unterstützt #hash-Anker
- verein: hartcodierten Maps-Link/Inline-CTA entfernt, .facility zentriert
- tokens: Sepia-Farben für Timeline; base: globale p-max-width entfernt
- historie: Timeline um 2024/2025 ergänzt
- Icons link-45deg (Footer) und robot (meta) nachgereicht

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HGzc6GhWhmLJt1jC2q1SRZ
2026-06-20 20:49:46 +02:00

70 lines
2.5 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
declare(strict_types=1);
/**
* Vereins-Übersichtsseite (Hub). Inhalt: data/verein.json.
* Struktur: Hero → Abteilungs-Kacheln → Gelände → Leitbild → Historien-Teaser → FAQ.
*/
$page = json_load('verein');
// Zwei Abteilungs-Kacheln. Turnen verlinkt bereits auf /turnen (Seite folgt).
$cards = [
[
'name' => 'Fußball',
'slug' => 'fussball',
'category' => 'Herren · Damen · Jugend',
'image' => ['base' => 'img/pages/fussball-hero', 'widths' => [640, 1000, 1600], 'alt' => 'Fußball beim TSV 08 Kulmbach'],
],
[
'name' => 'Turnabteilung',
'slug' => 'turnen',
'category' => 'Turnen · Trampolin',
'image' => ['base' => 'img/pages/turnen', 'widths' => [640, 1000], 'alt' => 'Turnabteilung des TSV 08 Kulmbach'],
],
];
$meta = [
'title' => 'Der Verein',
'description' => 'Der TSV 1908 Kulmbach e. V. seit 1908 dein Sportverein im Katzbachtal in Kulmbach. Über 650 Mitglieder, die Abteilungen Fußball und Turnen, zuhause auf der Hans-Rausch-Sportanlage.',
'og_image' => 'img/pages/vereinsgelaende-1600.jpg',
'schema' => page_schema(
[
['name' => 'Startseite', 'slug' => ''],
['name' => 'Der Verein', 'slug' => 'verein'],
],
$page['faq'] ?? []
),
];
component('hero', ['hero' => $page['hero']]);
component('team-cards', [
'teams' => $cards,
'title' => 'Unsere Abteilungen',
'title_hidden' => true,
'intro' => $page['abteilungen_intro'] ?? '',
'intro_below' => true,
'anchor' => 'abteilungen',
]);
?>
<section class="section section--tinted facility" id="gelaende">
<div class="container">
<h2><?= e($page['gelaende']['title']) ?></h2>
<p class="facility__lead"><?= e($page['gelaende']['text']) ?></p>
<figure class="facility__figure">
<?php component('img', ['image' => $page['gelaende']['image'], 'sizes' => '(max-width: 1200px) 100vw, 1200px', 'class' => 'facility__img']); ?>
<?php if (!empty($page['gelaende']['caption'])): ?>
<figcaption class="facility__caption"><?= e($page['gelaende']['caption']) ?></figcaption>
<?php endif; ?>
</figure>
</div>
</section>
<?php
component('section', ['section' => $page['about']]);
component('section', ['section' => $page['historie_teaser']]);
component('faq', ['faq' => $page['faq'] ?? []]);