Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: OpenID Connect / OAuth client 3.0.0-alpha9 New alpha version released for module openid_connect (3.0.0-alpha9). Usage Milestone: Google Analytics Module google_analytics crossed 1,000 active installs. Release: Timelinr 1.0.1 Minor update available for module timelinr (1.0.1). Release: GraphQL Compose Codegen 1.1.2 Minor update available for module graphql_compose_codegen (1.1.2). Release: Mapy.com 1.1.3 Minor update available for module mapycom (1.1.3). Release: Ckeditor5 entity browser 3.0.3 Minor update available for module ckeditor5_entity_browser (3.0.3). Release: Ckeditor5 entity browser 3.0.1 Minor update available for module ckeditor5_entity_browser (3.0.1). Release: Ckeditor5 entity browser 3.0.2 Minor update available for module ckeditor5_entity_browser (3.0.2). Release: Teamleader Integration 4.0.2 Minor update available for module teamleader (4.0.2). Module Revived: Entityqueue Buttons 1.1.2 Module entityqueue_buttons updated after 8 months of inactivity (1.1.2).

This module allows Drupal to detect the correct language based on both a website's domain and its URL path simultaneously. It can be configured to serve different language versions using distinct domains or subdirectories, integrating smoothly with Drupal's multilingual features.

Advanced Language Negotiation

Introduction

Advanced Language Negotiation enhances Drupal’s multilingual capabilities by allowing both domain-based and path-prefix-based language detection simultaneously. It provides a hybrid approach for sites needing flexible multilingual setups. This module is ideal for websites that serve different language versions based on both domain structure and URL path prefixes.

Example Setup

This module is ideal for websites using different domains and paths to represent various language versions. Example configurations:

Features

  • Enables both domain-based and path-prefix-based language negotiation at the same time.
  • Provides an easy-to-use configuration page for defining language mappings.
  • Fully integrates with Drupal’s core language negotiation system.
  • Automatically determines the correct language from the domain and/or path.
  • Fallback mechanism to the site's default language when no match is found.
  • Useful for multilingual websites using country-specific domains or subdirectories for different languages.

Post-Installation

  1. Install and enable the module via Extend or run:
  2. drush en advanced_language_negotiation -y
  3. Navigate to Configuration > Regional and language > Language negotiation.
  4. Select Advanced Language Negotiation as an active negotiation method.
  5. Configure domain-language mappings under the Advanced Language Negotiation settings:
  6. Save the configuration and test language negotiation by accessing different domains or paths.

Similar Projects

  • Drupal Core Language Negotiation – Provides either domain-based or path-prefix-based negotiation, but not both at the same time.
  • Internationalization (i18n) – Offers additional translation tools but does not focus on language negotiation.

This module provides a powerful and flexible multilingual solution for Drupal, perfect for websites needing advanced language detection across multiple domains and URL structures.

Depends on

Dependencies of the latest stable release

No dependencies recorded for this project.

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
5
Tracked since
Mar 2025
Latest release
1 year ago
Releases (12 mo)
0 ▼ from 5
Maintenance
Dormant

Release Timeline

Releases

Version Type Core Release date
1.0.0-beta3 Pre-release 9–11 Mar 26, 2025
1.0.0-beta2 Pre-release 9–11 Mar 14, 2025
1.0.0-beta1 Pre-release 9–11 Mar 6, 2025
1.0.0-alpha1 Pre-release 9–11 Mar 6, 2025
1.x-dev Dev 9–11 Mar 6, 2025