diff --git a/gatsby-config.js b/gatsby-config.js index 0d2a3a1480..5964e4ca00 100644 --- a/gatsby-config.js +++ b/gatsby-config.js @@ -12,13 +12,6 @@ const shouldAnnouncementBannerBeShown = false; const plugins = [ 'gatsby-plugin-react-helmet', - { - resolve: `gatsby-plugin-react-helmet-canonical-urls`, - options: { - siteUrl: process.env.GATSBY_DEFAULT_MAIN_URL, - noTrailingSlash: true, - }, - }, 'gatsby-transformer-sharp', 'gatsby-plugin-sharp', 'gatsby-plugin-catch-links', @@ -171,6 +164,17 @@ if (process.env.GATSBY_DRIFT_API) { }); } +const autoCanonicalURL = false; +if (autoCanonicalURL) { + plugins.push({ + resolve: `gatsby-plugin-react-helmet-canonical-urls`, + options: { + siteUrl: process.env.GATSBY_DEFAULT_MAIN_URL, + noTrailingSlash: true, + }, + }); +} + if ( process.env.ALGOLIA_ADMIN_KEY && process.env.GATSBY_ALGOLIA_APP_ID && diff --git a/src/components/shared/seo/seo.view.js b/src/components/shared/seo/seo.view.js index a1e8581cdb..6dac3ad3a3 100644 --- a/src/components/shared/seo/seo.view.js +++ b/src/components/shared/seo/seo.view.js @@ -40,6 +40,16 @@ export const SEO = ({ const currentUrl = slug ? `${docs}/${slug}` : docs; const currentImage = createMetaImagePath(image, siteUrl, siteImage); + const hrefLangRelAttributeHash = { + en: 'alternate', + es: 'alternate', + }; + if (slug && (slug.startsWith('es/') || slug === 'es')) { + hrefLangRelAttributeHash.es = 'canonical'; + } else { + hrefLangRelAttributeHash.en = 'canonical'; + } + return ( <> {I18N_CONFIG.hideEsFromRobots && @@ -73,14 +83,14 @@ export const SEO = ({ )} {pageTranslations && pageTranslations.es !== undefined && ( )} {pageTranslations && (