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

时间:2019-02-06 07:57:53

标签: typo3 typoscript typo3-9.x

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

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

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

有人可以给我提示如何在我的打字稿设置中为多种语言配置TYPO3网站地图功能吗?

最诚挚的问候,Lex

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

1 个答案:

答案 0 :(得分: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配置中为每种语言设置基本网址。 / p>

用于重写站点地图:

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(或其他名称)