This is a small utility module that extends the language negotiations to use multiple domains per language.

Use cases:

  • You have a bilingual website with the different domains mapping to the same language:
    • English (default): example.com, example.co.uk
    • German: example.de, example.at
    • Spanish: example.es, example.ar, example.mx
  • You want to use the same language negotiation settings for development, staging and live:
    • English: example.com, dev.example.com, staging.example.com
    • German: example.de, dev.example.de, staging.example.de
    • Spanish: example.es, dev.example.es, staging.example.es

Currently, the first domain defined for a language is used when switching languages.

This module overrides the callbacks of the default URL-Based language provider. Which callbacks are used is stored in a variable, saving the language negotiation form (admin/config/regional/language/configure) is needed for the overrides to be saved. If you export your variables using a system like strongarm, you might need some manual steps to make sure that the overridden configuration is saved correctly.

Project Information

Downloads