From b3f4ba822c031913f45921ea3f8ca91cd7bf2e40 Mon Sep 17 00:00:00 2001 From: Pontus Dreij Date: Tue, 20 Aug 2024 10:57:30 +0200 Subject: [PATCH] feat(SW-266): updated to use breadcrumbs title as default --- app/[lang]/(live)/(protected)/my-pages/[...path]/page.tsx | 7 +++++-- app/[lang]/(live)/(public)/[contentType]/[uid]/page.tsx | 8 ++++++-- utils/generateMetadata.ts | 5 +++-- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/app/[lang]/(live)/(protected)/my-pages/[...path]/page.tsx b/app/[lang]/(live)/(protected)/my-pages/[...path]/page.tsx index 584e0922b..c153db1a4 100644 --- a/app/[lang]/(live)/(protected)/my-pages/[...path]/page.tsx +++ b/app/[lang]/(live)/(protected)/my-pages/[...path]/page.tsx @@ -12,10 +12,13 @@ import styles from "./page.module.css" import type { LangParams, PageArgs } from "@/types/params" export async function generateMetadata({ params }: PageArgs) { - const accountPageRes = await serverClient().contentstack.accountPage.get() + const breadcrumbs = await serverClient().contentstack.breadcrumbs.get() + if (!breadcrumbs?.length) { + return null + } return generateBaseMetadata({ params, - pageTitle: accountPageRes?.accountPage?.title, + pageTitle: breadcrumbs.at(-1)?.title, }) } diff --git a/app/[lang]/(live)/(public)/[contentType]/[uid]/page.tsx b/app/[lang]/(live)/(public)/[contentType]/[uid]/page.tsx index c5b13354b..a4976c22d 100644 --- a/app/[lang]/(live)/(public)/[contentType]/[uid]/page.tsx +++ b/app/[lang]/(live)/(public)/[contentType]/[uid]/page.tsx @@ -20,11 +20,15 @@ export async function generateMetadata({ }: PageArgs) { switch (params.contentType) { case "loyalty-page": - const loyaltyPageRes = await serverClient().contentstack.loyaltyPage.get() + const breadcrumbs = await serverClient().contentstack.breadcrumbs.get() + if (!breadcrumbs?.length) { + return null + } return generateBaseMetadata({ params, - pageTitle: loyaltyPageRes?.loyaltyPage?.title, + pageTitle: breadcrumbs.at(-1)?.title, }) + // Add case "hotel-pages" etc when needed default: return diff --git a/utils/generateMetadata.ts b/utils/generateMetadata.ts index e44e14354..11a09d34f 100644 --- a/utils/generateMetadata.ts +++ b/utils/generateMetadata.ts @@ -8,8 +8,9 @@ import { LangParams, PageArgs } from "@/types/params" export async function generateMetadata({ params, pageTitle, -}: PageArgs & { pageTitle?: string }): Promise { - console.log("PARAMS", params) +}: PageArgs & { + pageTitle?: string +}): Promise { const metaData: MetaData | never[] | null = await serverClient().contentstack.metaData.get()