diff --git a/src/i18n/ui.ts b/src/i18n/ui.ts index 1bb184f..085e9bc 100644 --- a/src/i18n/ui.ts +++ b/src/i18n/ui.ts @@ -30,7 +30,7 @@ export const ui = { quantity: "Anzahl", photoSoon: "Produktfoto folgt", portraitSoon: "Porträtfoto von VanVan folgt", prevPhoto: "Vorheriges Foto", nextPhoto: "Nächstes Foto", handmadeBadge: "🩵 Handgemacht", - skipToContent: "Zum Inhalt springen", + skipToContent: "Zum Inhalt springen", back: "← Zurück", }, product: { articleNo: "Artikelnummer", material: "Material", size: "Größe", colors: "Farben", @@ -348,6 +348,7 @@ export const ui = { quantity: "Quantity", photoSoon: "Product photo coming soon", portraitSoon: "VanVan's portrait photo coming soon", prevPhoto: "Previous photo", nextPhoto: "Next photo", handmadeBadge: "🩵 Handmade", + skipToContent: "Skip to content", back: "← Back", }, product: { articleNo: "Item number", material: "Material", size: "Size", colors: "Colors", @@ -665,6 +666,7 @@ export const ui = { quantity: "Aazahl", photoSoon: "Produktfoto chunnt bald", portraitSoon: "Porträtfoto vo VanVan chunnt bald", prevPhoto: "Vorherigs Foto", nextPhoto: "Nächschts Foto", handmadeBadge: "🩵 Vo Hang gmacht", + skipToContent: "Zum Inhalt springe", back: "← Zrugg", }, product: { articleNo: "Artikelnummer", material: "Material", size: "Grösse", colors: "Farbe", @@ -982,6 +984,7 @@ export const ui = { quantity: "Quantité", photoSoon: "Photo du produit à venir", portraitSoon: "Photo de VanVan à venir", prevPhoto: "Photo précédente", nextPhoto: "Photo suivante", handmadeBadge: "🩵 Fait main", + skipToContent: "Aller au contenu", back: "← Retour", }, product: { articleNo: "Référence", material: "Matière", size: "Taille", colors: "Couleurs", diff --git a/src/pages/ch/produkt/[slug].astro b/src/pages/ch/produkt/[slug].astro index 9bca28a..ae2d118 100644 --- a/src/pages/ch/produkt/[slug].astro +++ b/src/pages/ch/produkt/[slug].astro @@ -44,6 +44,9 @@ const felder: [string, string | undefined][] = [
+ @@ -194,6 +197,24 @@ const felder: [string, string | undefined][] = [ )} + diff --git a/src/pages/en/produkt/[slug].astro b/src/pages/en/produkt/[slug].astro index f64a102..963f8c0 100644 --- a/src/pages/en/produkt/[slug].astro +++ b/src/pages/en/produkt/[slug].astro @@ -44,6 +44,9 @@ const felder: [string, string | undefined][] = [
+ @@ -194,6 +197,25 @@ const felder: [string, string | undefined][] = [ )} + diff --git a/src/pages/fr/produkt/[slug].astro b/src/pages/fr/produkt/[slug].astro index 381d019..bc9c324 100644 --- a/src/pages/fr/produkt/[slug].astro +++ b/src/pages/fr/produkt/[slug].astro @@ -44,6 +44,9 @@ const felder: [string, string | undefined][] = [
+ @@ -194,6 +197,26 @@ const felder: [string, string | undefined][] = [ )} + diff --git a/src/pages/produkt/[slug].astro b/src/pages/produkt/[slug].astro index 1603068..3ee558d 100644 --- a/src/pages/produkt/[slug].astro +++ b/src/pages/produkt/[slug].astro @@ -44,6 +44,15 @@ const felder: [string, string | undefined][] = [
+ {/* Auf ausdrücklichen Wunsch: oben auf jeder Produktseite ein Zurück-Button, der wirklich + zur vorherigen Seite zurückspringt (Browser-Verlauf), statt immer fest zur Kategorie zu + gehen — falls man z.B. von der Startseite, einer Suche oder "Das könnte dir gefallen" + kam. href bleibt als Rückfallebene gesetzt (kein JS / neuer Tab ohne Verlauf), das + Skript unten überschreibt den Klick nur, wenn ein echter vorheriger Seitenaufruf + derselben Seite im Verlauf existiert. */} + @@ -194,6 +203,25 @@ const felder: [string, string | undefined][] = [ )} + diff --git a/src/styles/global.css b/src/styles/global.css index 2f80d55..fcaab02 100644 --- a/src/styles/global.css +++ b/src/styles/global.css @@ -1122,6 +1122,24 @@ a:focus-visible, button:focus-visible { /* Aktuelle Ebene (Haupt-/Unterkategorie, Produktname) hebt sich etwas vom "Shop"-Wurzel-Link ab. */ .breadcrumb strong { color: var(--c-text); font-weight: 700; } +/* Zurück-Button oben auf der Produktseite (siehe src/pages/produkt/[slug].astro) — springt per + Skript zur wirklich vorherigen Seite im Browser-Verlauf, der href hier ist die Rückfallebene. */ +.product-back-row { margin-bottom: 0.9rem; } +.product-back-btn { + display: inline-flex; + align-items: center; + gap: 0.4em; + padding: 0.4em 0.95em; + border-radius: 999px; + border: 1px solid rgba(244, 241, 247, 0.16); + background: rgba(244, 241, 247, 0.04); + color: var(--c-text-muted); + font-size: 0.86rem; + font-weight: 600; + transition: border-color 0.2s var(--ease), color 0.2s var(--ease), background 0.2s var(--ease), transform 0.2s var(--ease); +} +.product-back-btn:hover { border-color: var(--c-accent); color: var(--c-accent); transform: translateX(-2px); } + /* Überschrift über der "weitere Produkte"-Reihe auf Unterkategorie-Seiten — macht klar, dass da noch mehr Produkte derselben Reihe kommen (Charakter-Familie), egal wie viele es am Ende sind. */ .more-variants-label { text-transform: uppercase; letter-spacing: 0.08em; color: var(--c-text-muted); margin-bottom: 0.8rem; }