From df4380409ef8343f91cb477db43440a12c500616 Mon Sep 17 00:00:00 2001 From: Peter Meier Date: Wed, 3 Jun 2026 09:22:03 +0200 Subject: [PATCH] feat(comments): Auto-open accordion wenn Kommentare vorhanden, Pages-Support - Post: Kommentar-Count server-seitig laden, Accordion offen wenn count > 0 - Page-Route: optionale Kommentare via commentsEnabled-Flag (Schema: default false) Co-Authored-By: Claude Sonnet 4.6 --- src/routes/[...slug]/+page.server.ts | 10 +++++++++- src/routes/[...slug]/+page.svelte | 18 ++++++++++++++++++ src/routes/post/[slug]/+page.server.ts | 3 ++- src/routes/post/[slug]/+page.svelte | 1 + 4 files changed, 30 insertions(+), 2 deletions(-) diff --git a/src/routes/[...slug]/+page.server.ts b/src/routes/[...slug]/+page.server.ts index e3a7613..3751f76 100644 --- a/src/routes/[...slug]/+page.server.ts +++ b/src/routes/[...slug]/+page.server.ts @@ -1,5 +1,5 @@ import type { PageServerLoad } from './$types'; -import { getPageBySlug } from '$lib/cms'; +import { getPageBySlug, getCommentCounts } from '$lib/cms'; import { extractCmsImageField, ensureTransformedImage, @@ -130,9 +130,17 @@ export const load: PageServerLoad = async ({ params, locals, fetch, url, setHead } } + const commentsEnabled = !!(page as { commentsEnabled?: boolean }).commentsEnabled; + const commentPageId = commentsEnabled ? (page._slug ?? slug) : null; + const commentCount = commentPageId + ? (await getCommentCounts([commentPageId]))[commentPageId] ?? 0 + : 0; + return { page, translations, + commentPageId, + commentCount, preview: !!preview, previewDraft: !!previewDraft, seoTitle: page.seoTitle ?? page.headline ?? page.linkName ?? slug, diff --git a/src/routes/[...slug]/+page.svelte b/src/routes/[...slug]/+page.svelte index e73c462..9640d2f 100644 --- a/src/routes/[...slug]/+page.svelte +++ b/src/routes/[...slug]/+page.svelte @@ -1,5 +1,7 @@