Breaking Changes - Localization

Deployed Date: 1/14/2025

The HTTP default source for the localize filter used to take the browser language into account. We have removed this functionality to only have it consider the locale query param, which was named lang. We decided to rename it as it is actually a locale which includes the country code. However, for the short term we will support either the locale or lang query parameters to support existing themes using lang. This change was made to make the localization flow easier to understand.

Only the localize filter allowed a localization source, even though we had other filters that involved localization. These have been updated to allow providing a localization source.

Our localization for properties varied for resources depending on the type. We have updated them to all just use the site language (SITE source) and will investigate allowing different sources in the future.

See here for more details on how localization works now.

For the store-info resource, storefront_site_language has been removed as it was equivalent to locale and just a duplicate property. language has been fixed to actually represent the default language of the site (e.g. en, fr) whereas locale represents the default locale (e.g. en_US, fr_FR).