29 lines
1.5 KiB
Twig
29 lines
1.5 KiB
Twig
|
{{ block('language_block_start') }}
|
||
|
{% set display_format = display_format ?? config.get('plugins.langswitcher.language_display', 'long') %}
|
||
|
|
||
|
{% for language in langswitcher.languages %}
|
||
|
{% set active_class = '' %}
|
||
|
{% set show_language = true %}
|
||
|
{% if language == langswitcher.current %}
|
||
|
{% set active_class = 'active' %}
|
||
|
{% endif %}
|
||
|
{% if langswitcher.translated_routes[language] %}
|
||
|
{% set lang_url = langswitcher.translated_routes[language] ~ page.urlExtension %}
|
||
|
{% else %}
|
||
|
{% set base_lang_url = base_url_simple ~ grav.language.getLanguageURLPrefix(language) %}
|
||
|
{% set lang_url = base_lang_url ~ langswitcher.page_route ~ page.urlExtension %}
|
||
|
{% endif %}
|
||
|
{% set untranslated_pages_behavior = grav.config.plugins.langswitcher.untranslated_pages_behavior %}
|
||
|
{% if untranslated_pages_behavior != 'none' %}
|
||
|
{% set translated_page = langswitcher.translated_pages[language] %}
|
||
|
{% if (not translated_page) or (not translated_page.published) %}
|
||
|
{% if untranslated_pages_behavior == 'redirect' %}
|
||
|
{% set lang_url = url('/') %}
|
||
|
{% elseif untranslated_pages_behavior == 'hide' %}
|
||
|
{% set show_language = false %}
|
||
|
{% endif %}
|
||
|
{% endif %}
|
||
|
{% endif %}
|
||
|
{{ block('language_item') }}
|
||
|
{% endfor %}
|
||
|
{{ block('language_block_end') }}
|