diff --git a/src/routes/post/[slug]/+page.server.ts b/src/routes/post/[slug]/+page.server.ts index 20c6b9a..40a1666 100644 --- a/src/routes/post/[slug]/+page.server.ts +++ b/src/routes/post/[slug]/+page.server.ts @@ -232,7 +232,17 @@ export const load: PageServerLoad = async ({ params, locals, url, setHeaders }) seoDescription: postDescription, socialImage: postSocialImageAbs ?? postImageUrl ?? undefined, robots: (post as { seoMetaRobots?: string }).seoMetaRobots ?? undefined, - keywords: (post as { seoKeywords?: string }).seoKeywords ?? undefined, + keywords: (() => { + const explicit = ((post as { seoKeywords?: string }).seoKeywords ?? '').trim(); + if (explicit) return explicit; + // Fallback: join tag names so published posts without explicit keywords + // still ship a meaningful . + const tags = (post as { postTag?: Array<{ name?: string }> }).postTag ?? []; + const names = tags + .map((t) => (typeof t?.name === 'string' ? t.name.trim() : '')) + .filter(Boolean); + return names.length > 0 ? names.join(', ') : undefined; + })(), jsonLd, breadcrumbItems: [ { href: '/', label: 'Start' }, diff --git a/src/routes/post/[slug]/+page.svelte b/src/routes/post/[slug]/+page.svelte index 725a9db..6f1df9b 100644 --- a/src/routes/post/[slug]/+page.svelte +++ b/src/routes/post/[slug]/+page.svelte @@ -72,21 +72,36 @@ -
+
+ + {#if data.post._created || data.post.created} + + {/if} {#if data.contentHeadlineHtml} -
+
{@html data.contentHeadlineHtml}
{:else if data.post.headline || data.post.subheadline}
{#if data.post.headline} -

{data.post.headline}

+

{data.post.headline}

{/if} {#if data.post.subheadline} -

{data.post.subheadline}

+

{data.post.subheadline}

{/if}
{/if} + {#if !data.post.subheadline && data.post.excerpt} +

{data.post.excerpt}

+ {/if} {#if data.isEvent && (data.eventDateLabel || data.eventLocationText)}
{/if} {#if data.contentBodyHtml} -
+
{@html data.contentBodyHtml}
{/if} {#if data.hasRowContent} {/if} + {#if (data.post.postTag ?? []).length > 0} + + {/if} +
{#if data.isEvent && (data.mapEmbedUrl || data.mapLinkUrl)}