diff --git a/packages/docusaurus-theme-classic/src/theme/LayoutHead/index.tsx b/packages/docusaurus-theme-classic/src/theme/LayoutHead/index.tsx
index bfb4ea0745..e941de54d7 100644
--- a/packages/docusaurus-theme-classic/src/theme/LayoutHead/index.tsx
+++ b/packages/docusaurus-theme-classic/src/theme/LayoutHead/index.tsx
@@ -82,15 +82,13 @@ function CanonicalUrlHeaders({permalink}: {permalink?: string}) {
export default function LayoutHead(props: Props): JSX.Element {
const {
- siteConfig,
+ siteConfig: {
+ favicon,
+ themeConfig: {metadatas},
+ },
i18n: {currentLocale, localeConfigs},
} = useDocusaurusContext();
- const {
- favicon,
- themeConfig: {image: defaultImage, metadatas},
- } = siteConfig;
const {title, description, image, keywords, searchMetadatas} = props;
-
const faviconUrl = useBaseUrl(favicon);
// See https://github.com/facebook/docusaurus/issues/3317#issuecomment-754661855
@@ -105,7 +103,7 @@ export default function LayoutHead(props: Props): JSX.Element {
{favicon && }
-
+
diff --git a/packages/docusaurus-theme-classic/src/theme/Seo/index.tsx b/packages/docusaurus-theme-classic/src/theme/Seo/index.tsx
index c7c952f0af..be5aaeb79a 100644
--- a/packages/docusaurus-theme-classic/src/theme/Seo/index.tsx
+++ b/packages/docusaurus-theme-classic/src/theme/Seo/index.tsx
@@ -7,8 +7,9 @@
import React from 'react';
import Head from '@docusaurus/Head';
+import {useThemeConfig, useTitleFormatter} from '@docusaurus/theme-common';
import useBaseUrl from '@docusaurus/useBaseUrl';
-import {useTitleFormatter} from '@docusaurus/theme-common';
+
import type {Props} from '@theme/Seo';
export default function Seo({
@@ -17,13 +18,14 @@ export default function Seo({
keywords,
image,
}: Props): JSX.Element {
- const metaTitle = useTitleFormatter(title);
- const metaImageUrl = useBaseUrl(image, {absolute: true});
+ const {image: defaultImage} = useThemeConfig();
+ const pageTitle = useTitleFormatter(title);
+ const pageImage = useBaseUrl(image || defaultImage, {absolute: true});
return (
- {title && {metaTitle}}
- {title && }
+ {pageTitle}
+
{description && }
{description && }
@@ -37,9 +39,9 @@ export default function Seo({
/>
)}
- {image && }
- {image && }
- {image && }
+ {pageImage && }
+ {pageImage && }
+ {pageImage && }
);
}
diff --git a/packages/docusaurus-theme-common/src/utils/useThemeConfig.ts b/packages/docusaurus-theme-common/src/utils/useThemeConfig.ts
index 5289da2cf4..93e28cdd5b 100644
--- a/packages/docusaurus-theme-common/src/utils/useThemeConfig.ts
+++ b/packages/docusaurus-theme-common/src/utils/useThemeConfig.ts
@@ -100,6 +100,7 @@ export type ThemeConfig = {
prism: PrismConfig;
footer?: Footer;
hideableSidebar: boolean;
+ image: string;
};
export function useThemeConfig(): ThemeConfig {