commit 53117d8efe2d7d89e657dcf8536755abf66983f1 parent 65ffdbe777d9d9f8d2b3bf32dd14ff7632ceef64 Author: Hugo Soucy <hugo@soucy.cc> Date: Sun, 22 Nov 2020 13:37:39 -0500 Add the langswitcher templates Diffstat:
A | templates/partials/langswitcher.hreflang.html.twig | | | 11 | +++++++++++ |
A | templates/partials/langswitcher.html.twig | | | 35 | +++++++++++++++++++++++++++++++++++ |
2 files changed, 46 insertions(+), 0 deletions(-)
diff --git a/templates/partials/langswitcher.hreflang.html.twig b/templates/partials/langswitcher.hreflang.html.twig @@ -0,0 +1,11 @@ +{% set langobj = grav['language'] %} + +{% for key in langswitcher.languages %} + {% if key == langswitcher.current %} + {% set lang_url = page.url %} + {% else %} + {% set lang_url = base_url_simple ~ langobj.getLanguageURLPrefix(key) ~ langswitcher.page_route ~ page.urlExtension ?: '/' %} + {% endif %} + + <link href="{{ lang_url ~ uri.params }}" hreflang="{{ key }}" rel="alternate" /> +{% endfor %} diff --git a/templates/partials/langswitcher.html.twig b/templates/partials/langswitcher.html.twig @@ -0,0 +1,35 @@ +{% for language in langswitcher.languages %} + {% set show_language = true %} + {% if language == langswitcher.current %} + {% set lang_url = page.url %} + {% set active_class = ' is-current' %} + {% else %} + {% set base_lang_url = base_url_simple ~ grav.language.getLanguageURLPrefix(language) %} + {% set lang_url = base_lang_url ~ langswitcher.page_route ~ page.urlExtension %} + {% 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 = base_lang_url ~ '/' %} + {% elseif untranslated_pages_behavior == 'hide' %} + {% set show_language = false %} + {% endif %} + {% endif %} + {% endif %} + {% set active_class = '' %} + {% endif %} + + {% if show_language %} + <li class="nav__item"> + <a + {% if language != langswitcher.current %} + href="{{ lang_url ~ uri.params }}" + {% else %} + hidden="" + {% endif %}> + {{ native_name(language)|capitalize }} + </a> + </li> + {% endif %} +{% endfor %}