使用gatsby本地化处理反向的语言环境名称(例如,使用us-en而不是en-us)

时间:2019-10-21 05:51:26

标签: reactjs localization react-router internationalization gatsby

我有一个用例,我需要修改wordpress到Gatsby的登录页面,该页面在Google和所有网站中都有很好的参考,但语言环境名称错误(site.com/us-en/some-route-网址),而不是(site.com/zh-cn/some-route-url)。

问题是如果我在配置文件中出现

    {
      resolve: `gatsby-plugin-intl`,
      options: {
        path: `${__dirname}/src/intl`,
        languages: [`us-en`, `ma-ar`],
        defaultLanguage: `us-en`,
        redirect: true,
      },
    },

它给出的错误是:在react-inlt / locale-data中找不到语言环境“ us-en”。,当我将其反转为

languages: [`en-us`, `ar-ma`],

它可以工作,但是我需要 us-en 的第一个用例来维护着陆页的旧URL格式,因此不会损害SEO。

如何使此插件或在 Gatsby 中使用某些自定义路由或其他方式接受这种语言环境格式?

1 个答案:

答案 0 :(得分:0)

@musicformellons最终表明lang-country(即en-us)是国际化的正确格式,您不能要求插件将其逆转。否则,我会询问SEO专家,他说将网站url从/ us-en切换到/ en-us不会影响网站SEO,也不会影响在Google上的排名,只要应用了301永久重定向。