CLAUDE.md mit Code-Stand abgeglichen + Hero-Regel dokumentiert

- Hero-Regel festgeschrieben (Startseite groß, Unterseiten Überschrift +
  Teaser); gleiche Konvention im Docblock von hero.php
- Single-Source-Tabelle generalisiert (Seiteninhalte -> data/<slug>.json)
  + ansprechpartner.json als geteilte Personen-Quelle
- Spam-Schutz vollständig: Rate-Limiting, Link-Check, spam.log
- JSON-LD-Helper (sportsevent_nodes, job_posting_schema) und Helper-Liste
  (abs_url, config, form_token) ergänzt
- bin/img-resize.php und vollständige Logs-Liste dokumentiert

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HGzc6GhWhmLJt1jC2q1SRZ
This commit is contained in:
2026-06-20 20:30:04 +02:00
parent 169878a4f7
commit 73583a896c
2 changed files with 31 additions and 10 deletions

View File

@@ -9,6 +9,11 @@ declare(strict_types=1);
* align-Varianten: 'center' (mittig zentriert), 'bottom-left' (Default).
* compact: true → niedrigere Variante für Unterseiten-Header.
* display: true → großer Editorial-Look (Riesen-Titel, Outline-Tagline, Kicker, Scroll-Cue).
*
* KONVENTION (siehe CLAUDE.md → Hero-Regel): display + kicker + tagline + video sind der
* Startseite vorbehalten. Unterseiten-Heros sind einheitlich „Überschrift + Teaser":
* nur title + text, dazu compact: true und align: 'bottom-left'. Kein kicker/tagline,
* ctas nur als Ausnahme.
*/
$align = in_array($hero['align'] ?? '', ['center', 'bottom-left'], true) ? $hero['align'] : 'bottom-left';
$compact = !empty($hero['compact']);