From 85c4c42bd601270d7be0f34a0767a34bb85e29bb Mon Sep 17 00:00:00 2001 From: Armand Philippot Date: Tue, 12 Dec 2023 18:50:03 +0100 Subject: refactor(hooks): rewrite useBreadcrumbs hook * use next/router to get the slug instead of using props * handle cases where the current page title is not provided * update JSON-LD schema to match the example in documentation * add tests --- src/pages/index.tsx | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) (limited to 'src/pages/index.tsx') diff --git a/src/pages/index.tsx b/src/pages/index.tsx index f4d36c1..ade628a 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -29,7 +29,7 @@ import { CONFIG } from '../utils/config'; import { ROUTES } from '../utils/constants'; import { getSchemaJson, getWebPageSchema } from '../utils/helpers'; import { loadTranslation, type Messages } from '../utils/helpers/server'; -import { useBreadcrumb } from '../utils/hooks'; +import { useBreadcrumbs } from '../utils/hooks'; type RecentPostsProps = { posts: RecentArticle[]; @@ -129,10 +129,7 @@ type HomeProps = { * Home page. */ const HomePage: NextPageWithLayout = ({ recentPosts }) => { - const { schema: breadcrumbSchema } = useBreadcrumb({ - title: '', - url: ROUTES.HOME, - }); + const { schema: breadcrumbSchema } = useBreadcrumbs(); const webpageSchema = getWebPageSchema({ description: meta.seo.description, @@ -140,7 +137,7 @@ const HomePage: NextPageWithLayout = ({ recentPosts }) => { slug: ROUTES.HOME, title: meta.seo.title, }); - const schemaJsonLd = getSchemaJson([webpageSchema]); + const schemaJsonLd = getSchemaJson([webpageSchema, breadcrumbSchema]); return ( @@ -158,12 +155,6 @@ const HomePage: NextPageWithLayout = ({ recentPosts }) => { type="application/ld+json" dangerouslySetInnerHTML={{ __html: JSON.stringify(schemaJsonLd) }} /> -