Ця тема добре розкрита в документації
Додати щось важко, важливо бути уважним. Тут будуть особливості.
Після налаштувань згідно з інструкцією автоматично обирає локаль в залежності від налаштувань браузера відвідувача.
Два варіанти перемикача (ставив в базовий шаблон)
перший – вказано тільки інші мови
{% if page %}
{% for translation in page.get_translations.live %}
{% get_language_info for translation.locale.language_code as lang %}
<a href="{% pageurl translation %}" rel="alternate" hreflang="{{ language_code }}">
{{ lang.name_local }}
</a>
{% endfor %}
{% endif %}Другий – є усі локалі, налаштовані в settings/base.py
{% for language_code, language_name in LANGUAGES %}
{% get_language_info for language_code as lang %}
{% language language_code %}
<a href="{% pageurl page.localized %}" rel="alternate" hreflang="{{ language_code }}">
{{ lang.name_local }}
</a>
{% endlanguage %}
{% endfor %}
{% load i18n %}
{% get_current_language as LANGUAGE_CODE %}
<html class=”no-js” lang=”{{ LANGUAGE_CODE }}”>