如何在 TYPO3 中为其他语言的入口点设置变体

How to set up Variants for Entry Points of additional languages in TYPO3

该项目的最终领域将是:

  1. www.domain.com(英语,主要语言,L=0)
  2. www.domain.de(德语,L=1)

development/preview 个域是

  1. dev.domain.com
  2. dev.domain.de

可以在站点配置的选项卡 "General" 中为主 "Entry Point" 创建变体: 基数:https://dev.domain.com/ 条件:applicationContext == "Development"

但是如何为第二语言(德语)设置变体?

这还不可能。相关问题可以在 https://forge.typo3.org/issues/86400.

查看

我会同时使用不同的 config.yml 文件来解决这个问题。

只要您不需要其他特定语言的配置,就可以在您的 Apache 配置中设置环境变量并在您的站点配置中读取它们。这是官方支持的(见here

站点配置:

base: 'https://%env(BASE_DOMAIN)%/'
languages:
  -
    base: 'https://%env(BASE_DOMAIN_DE)%/'

A​​pache 配置(示例):

SetEnvIf Host ".*" TYPO3_CONTEXT=Production
SetEnvIf Host ".*" BASE_DOMAIN=www.domain.com
SetEnvIf Host ".*" BASE_DOMAIN_DE=www.domain.de
SetEnvIf Host "dev.domain.com" TYPO3_CONTEXT=Development
SetEnvIf Host "dev.domain.com" BASE_DOMAIN=dev.domain.com
SetEnvIf Host "dev.domain.de" TYPO3_CONTEXT=Development
SetEnvIf Host "dev.domain.de" BASE_DOMAIN_DE=dev.domain.de

由于TYPO3 v9.5.5 baseVariants可以直接在yaml中添加"base"站点语言的值,与站点中默认的"base" 属性相同。