diff --git a/packages/docusaurus-theme-classic/src/theme/DocItem/index.js b/packages/docusaurus-theme-classic/src/theme/DocItem/index.js index 8325244d35e7..96b77ffa091a 100644 --- a/packages/docusaurus-theme-classic/src/theme/DocItem/index.js +++ b/packages/docusaurus-theme-classic/src/theme/DocItem/index.js @@ -8,6 +8,7 @@ import React from 'react'; import Head from '@docusaurus/Head'; +import isInternalUrl from '@docusaurus/isInternalUrl'; import useDocusaurusContext from '@docusaurus/useDocusaurusContext'; import useBaseUrl from '@docusaurus/useBaseUrl'; import DocPaginator from '@theme/DocPaginator'; @@ -75,7 +76,10 @@ function DocItem(props) { }, } = DocContent; - const metaImageUrl = siteUrl + useBaseUrl(metaImage); + let metaImageUrl = siteUrl + useBaseUrl(metaImage); + if (!isInternalUrl(metaImage)) { + metaImageUrl = metaImage; + } return ( <> diff --git a/packages/docusaurus-theme-classic/src/theme/Layout/index.js b/packages/docusaurus-theme-classic/src/theme/Layout/index.js index 571a10db98b7..e733f40ee5a0 100644 --- a/packages/docusaurus-theme-classic/src/theme/Layout/index.js +++ b/packages/docusaurus-theme-classic/src/theme/Layout/index.js @@ -7,6 +7,7 @@ import React from 'react'; import Head from '@docusaurus/Head'; +import isInternalUrl from '@docusaurus/isInternalUrl'; import useDocusaurusContext from '@docusaurus/useDocusaurusContext'; import useBaseUrl from '@docusaurus/useBaseUrl'; @@ -36,8 +37,12 @@ function Layout(props) { version, } = props; const metaTitle = title ? `${title} | ${siteTitle}` : siteTitle; - const metaImage = image || defaultImage; - const metaImageUrl = siteUrl + useBaseUrl(metaImage); + + let metaImageUrl = siteUrl + useBaseUrl(metaImage); + if (!isInternalUrl(metaImage)) { + metaImageUrl = metaImage; + } + const faviconUrl = useBaseUrl(favicon); return (