From 2686fd310663cbb1df7c3fd9e75e5d6ab559b62c Mon Sep 17 00:00:00 2001 From: Marco Date: Sat, 29 Aug 2026 23:02:33 +0000 Subject: [PATCH] Migrate /tasse-die-pause onto the PDP block system MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit First of the 3 legacy hand-coded PDPs migrated, now that Products.layout/ ProductBlocks.tsx exist. "Die Pause." got real final copy this session (product doc's layout populated directly in Payload: hero body, a "So einfach ist eine Pause" 3-step section, product facts as a pill list, a Björn-quote contrast line, closing copy, pricing panel) — good first candidate since its own page was still just a provisional scaffold. Hero.tsx/Pricing.tsx in ./components are now dead code, left for a follow-up cleanup pass rather than deleted here. Co-Authored-By: Claude Sonnet 5 Claude-Session: https://claude.ai/code/session_013Eg6h91yngXmSnM51wxXM8 --- app/tasse-die-pause/page.tsx | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/app/tasse-die-pause/page.tsx b/app/tasse-die-pause/page.tsx index c8b3040..0729019 100644 --- a/app/tasse-die-pause/page.tsx +++ b/app/tasse-die-pause/page.tsx @@ -1,13 +1,16 @@ import type { Metadata } from "next"; -import { Hero } from "./components/Hero"; -import { Pricing } from "./components/Pricing"; +import { notFound } from "next/navigation"; +import { ProductBlocks } from "../components/ProductBlocks"; import { Footer } from "../components/Footer"; import { getProductBySlug, getCompanySettings } from "../lib/payload"; import { buildProductSchema } from "../lib/structuredData"; -// Provisional scaffold page — naming/design concept still undecided (parked -// 2026-08-24). Metadata reads from the live product instead of a hardcoded -// tagline, unlike every other bespoke page here — see Hero.tsx's comment. +// "Die Pause." finally has real copy and a name (2026-08-29) — first PDP +// migrated off its own hand-coded Hero/Pricing onto the block-driven +// system (Products.layout/ProductBlocks.tsx), now that both exist. Was a +// provisional scaffold before (naming/design undecided, parked +// 2026-08-24); Hero.tsx/Pricing.tsx in ./components are dead code now, +// kept only until a next cleanup pass removes them. export async function generateMetadata(): Promise { const product = await getProductBySlug("tasse-die-pause"); const title = product ? `${product.name} – einfach produktiv.` : "Tasse – einfach produktiv."; @@ -26,18 +29,14 @@ export default async function TasseDiePausePage() { getProductBySlug("tasse-die-pause"), getCompanySettings(), ]); - const productSchema = product - ? buildProductSchema(product, "https://einfach-produktiv.mk360.de/tasse-die-pause", seller) - : null; + if (!product) notFound(); + const productSchema = buildProductSchema(product, "https://einfach-produktiv.mk360.de/tasse-die-pause", seller); return ( <> - {productSchema && ( -