group-schedule um eine Tab-Leiste (group-tabs) erweitert: bei Disziplinen mit vielen Gruppen (z. B. Eltern-Kind-Turnen) werden die Gruppen als Tabs gruppiert statt endlos gestapelt. JS (group-tabs.js) als progressive enhancement — ohne JS bleiben alle Panels sichtbar. Begleitend Feinschliff an group-card/-list/schedule-row. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HGzc6GhWhmLJt1jC2q1SRZ
33 lines
1.1 KiB
PHP
33 lines
1.1 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
/**
|
|
* Turnen → Eltern-Kind- & Kinderturnen. Inhalt: data/turnen.json (disciplines.eltern-kind-turnen).
|
|
* Bündelt Eltern-Kind-Gruppen und die nach Alter gestaffelten Kinderturn-Gruppen.
|
|
* Struktur: Hero → Gruppen/Trainingszeiten → CTA.
|
|
*/
|
|
$slug = 'turnen/eltern-kind-turnen';
|
|
$data = json_load('turnen');
|
|
$d = $data['disciplines']['eltern-kind-turnen'];
|
|
|
|
$meta = [
|
|
'title' => 'Eltern-Kind- & Kinderturnen in Kulmbach',
|
|
'description' => $d['hero']['text'],
|
|
'og_image' => 'img/hero/hero-1600.jpg',
|
|
'scripts' => ['group-tabs.js'],
|
|
'schema' => page_schema([
|
|
['name' => 'Startseite', 'slug' => ''],
|
|
['name' => 'Turnen', 'slug' => 'turnen'],
|
|
['name' => 'Eltern-Kind- & Kinderturnen', 'slug' => $slug],
|
|
]),
|
|
];
|
|
|
|
component('hero', ['hero' => $d['hero']]);
|
|
component('group-schedule', [
|
|
'location' => $d['location'] ?? [],
|
|
'lead' => $d['lead'] ?? '',
|
|
'notice' => $d['notice'] ?? '',
|
|
'groups' => $d['groups'] ?? [],
|
|
'footnote' => $data['footnote'] ?? '',
|
|
]); |