使用多种语言生成站点地图?

问题描述 投票:1回答:1

我正在设置一个多语言页面,我想使用新的TYPO3 v9板载站点地图生成功能。我阅读了TYPO3 docs并为页面设置了站点地图生成配置。

现在我可以请求https://example.com/sitemap.xml - 这给了我一个sitemap-index文件,其中一个条目指向一个有效的sitemap.xml文件,但我看不到任何其他语言。

也可以请求https://example.com/EN/sitemap.xml,我可以向robots.txt添加更多Sitemap:指令,但这是正确的吗?

有人可以给我一个提示如何在我的typoscript设置中为多种语言配置TYPO3站点地图功能吗?

最好的问候,Lex

顺便说一句:我也在HTML头区使用<link rel="alternate" hreflang="en" href="https://example.com/en/">

typo3 typoscript typo3-9.x
1个回答
2
投票

如果您的语言设置正确,将自动为每种语言生成站点地图。

在您的站点配置(yaml) - > config / sites / your_site / config.yaml

语言配置(示例)

languages:
-
  title: English
  enabled: true
  languageId: '0'
  base: /
  typo3Language: en
  locale: en
  ....
-
  title: 
  enabled: true
  languageId: '1'
  base: /sv/
  typo3Language: sv
  locale: sv_SE
  ....

将在同一个域中生成两种语言,每种语言都有一个路径

  • your-domain.xy / =英文
  • your-domain.xy / sv / =瑞典语

如果要使用域而不是路径(例如,语言1为domain-1.xy,语言2为domain-2.xy),则必须在yaml配置中为每种语言设置基本URL。

要重写站点地图:

routeEnhancers:
  PageTypeSuffix:
    type: PageType
    limitToPages:
      - 1
    map:
      sitemap.xml: 1533906435

这将导致站点地图可通过重写的URL访问,仅限于ID为1的页面。

  • your-domain.xy / sitemap.xml - >英文站点地图,列出英文页面
  • your-domain.xy / sv / sitemap.xml - >瑞典站点地图,列出瑞典语页面

因此,要生成每种语言的站点地图,您需要:

  • 正确设置您的语言(更喜欢新的yaml配置而不是TypoScript)
  • 激活新的TYPO3 SEO sysext
  • 可选:重写type = 1533906435到sitemap.xml(或其他名称)
© www.soinside.com 2019 - 2024. All rights reserved.