Files
dogfather-universe/stimmen.html
T
DogFatherGitandClaude Opus 5 4173e43c78 Cache-Busting fuer CSS/JS auf allen Seiten (?v=20260820)
Zusammen mit dem no-cache-Header-Fix in server/index.js: Cloudflare (die
Seite laeuft hinter einem orange-cloud-Proxy) liefert fuer .css/.js einen
eigenen festen Standard-Cache (Browser Cache TTL 4 Std) aus, UNABHAENGIG
vom Origin-Cache-Control -- der no-cache-Header allein reichte deshalb
nicht (per curl bestaetigt: main.css zeigte weiterhin max-age=14400 direkt
nach dem Deploy). Robuste, von Cloudflare-Zoneneinstellungen unabhaengige
Loesung: jede lokale CSS/JS-Referenz auf allen 34 Seiten bekommt einen
Versions-Query-String (?v=20260820) -- fuer Browser/CDN ist das eine neue
URL, alte gecachte Kopien werden dadurch nie mehr faelschlich weiterverwendet.

WICHTIG fuer kuenftige Aenderungen an main.css/main.js: das Datum in ?v=
muss bei der naechsten inhaltlichen Aenderung an einer dieser Dateien
wieder hochgezaehlt werden, sonst greift der Cache-Bust nicht erneut.

Co-Authored-By: Claude Opus 5 <[email protected]>
2026-08-20 19:26:11 +02:00

64 lines
3.2 KiB
HTML

<!DOCTYPE html>
<html lang="de" data-theme="hasidog">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Stimmen über DogFather — DOGFATHER UNIVERSE</title>
<meta name="description" content="Was die Community und das Team über DogFather sagen." />
<link rel="icon" type="image/png" href="assets/img/favicon.png" />
<link rel="manifest" href="/manifest.json" />
<meta name="theme-color" content="#0b0d10" />
<meta property="og:type" content="website" />
<meta property="og:site_name" content="DOGFATHER UNIVERSE" />
<meta property="og:title" content="Stimmen über DogFather — DOGFATHER UNIVERSE" />
<meta property="og:description" content="Was die Community und das Team über DogFather sagen." />
<meta property="og:image" content="https://dogfather-universe.com/assets/img/og-cover.jpg" />
<meta property="og:url" content="https://dogfather-universe.com/stimmen.html" />
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="Stimmen über DogFather — DOGFATHER UNIVERSE" />
<meta name="twitter:description" content="Was die Community und das Team über DogFather sagen." />
<meta name="twitter:image" content="https://dogfather-universe.com/assets/img/og-cover.jpg" />
<link rel="stylesheet" href="assets/css/main.css?v=20260820" />
<link rel="stylesheet" href="assets/css/theme-dogfather.css?v=20260820" />
<link rel="stylesheet" href="assets/css/theme-hasidog.css?v=20260820" />
<link rel="stylesheet" href="assets/css/theme-spicymedia.css?v=20260820" />
</head>
<body class="mit-hintergrund" style="--page-bg:url('/assets/img/bg-stimmen.jpg');--page-bg-mobile:url('/assets/img/bg-stimmen-mobile.jpg');">
<div id="site-header"></div>
<main>
<section class="hero page-bg">
<div class="hero-banner"><img src="/assets/img/bg-stimmen.jpg" alt="" loading="eager" /></div>
<div class="container">
<span class="eyebrow" data-i18n="st_eyebrow">Welt 2 — HasiDog</span>
<h1 data-i18n="st_h1">Stimmen über DogFather</h1>
<p class="lead worlds" data-i18n="st_lead">Was Community und Team sagen.</p>
</div>
</section>
<section class="section-tight">
<div class="container grid grid-3">
<div class="card">
<p class="quote" data-i18n="st_quote_community">„Hier steht bald eine echte Stimme aus der Community. 🩵"</p>
<p class="small muted" data-i18n="st_label_community">— Community-Mitglied</p>
</div>
<div class="card">
<p class="quote" data-i18n="st_quote_team">„Hier steht bald eine echte Stimme aus dem Team. 🩵"</p>
<p class="small muted" data-i18n="st_label_team">— Team-Mitglied</p>
</div>
<div class="card">
<p class="quote" data-i18n="st_quote_scout">„Hier steht bald eine echte Stimme von Scouts &amp; Creatorn. 🩵"</p>
<p class="small muted" data-i18n="st_label_scout">— Scout/Creator</p>
</div>
</div>
<!-- TODO: Echte Testimonials von Community, Team, Scouts und Creator sammeln (mit Einverständnis zur Veröffentlichung). Bis dahin bleiben hier Platzhalter stehen. -->
</section>
</main>
<div id="site-footer"></div>
<script src="assets/js/i18n-stimmen.js?v=20260820"></script>
<script src="assets/js/main.js?v=20260820"></script>
</body>
</html>