From faadb0f6ced9ad9407d33ff5a7d8b0b7eb66c774 Mon Sep 17 00:00:00 2001
From: enjidev
Date: Thu, 15 Dec 2022 10:20:52 +0700
Subject: [PATCH] feat: use next-seo
---
package.json | 1 +
src/components/layouts/PostContentsLayout.tsx | 49 +++++++------------
yarn.lock | 5 ++
3 files changed, 25 insertions(+), 30 deletions(-)
diff --git a/package.json b/package.json
index 84687ba2..e1d4f178 100644
--- a/package.json
+++ b/package.json
@@ -27,6 +27,7 @@
"framer-motion": "^7.6.6",
"front-matter": "^4.0.2",
"next": "13.0.0",
+ "next-seo": "^5.15.0",
"next-themes": "^0.2.1",
"react": "18.2.0",
"react-dom": "18.2.0",
diff --git a/src/components/layouts/PostContentsLayout.tsx b/src/components/layouts/PostContentsLayout.tsx
index 607ae1ca..cd929570 100644
--- a/src/components/layouts/PostContentsLayout.tsx
+++ b/src/components/layouts/PostContentsLayout.tsx
@@ -1,11 +1,12 @@
import clsx from 'clsx';
+import { ArticleJsonLd } from 'next-seo';
import Head from '@/components/meta/Head';
-import StructuredData from '@/components/meta/StructuredData';
import PageHeader from '@/components/shared/Header/PageHeader';
import TableOfContents from '@/components/shared/TableOfContents';
import { formatDateISO, getPostOgImageUrl } from '@/helpers/post';
+import { getBaseUrl } from '@/helpers/url';
import type { TPostFrontMatter, TTableOfContents } from '@/types';
@@ -28,38 +29,26 @@ function PostContentsLayout({
tags,
});
- const structuredData = JSON.stringify({
- '@context': 'https://schema.org',
- '@type': 'BlogPosting',
- headline: title,
- image: [
- {
- '@type': 'ImageObject',
- contentUrl: ogImage,
- creditText: 'enji.dev',
- creator: {
- '@type': 'Person',
- name: 'Enji Kusnadi',
- url: 'https://twitter.com/enjidev',
- },
- copyrightNotice: 'Enji Kusnadi',
- },
- ],
- datePublished: formatDateISO(date),
- dateModified: formatDateISO(date),
- author: [
- {
- '@type': 'Person',
- name: 'Enji Kusnadi',
- url: 'https://twitter.com/enjidev',
- },
- ],
- });
-
return (
<>
-
+