Я настраиваю веб-сайт с поддержкой нескольких языков.
В корневом каталоге у меня есть один или несколько каталогов на основе языкового стандарта, например: / en / it
Iя пытаюсь установить один язык по умолчанию и позволить Jekyll генерировать свои страницы в корне каталога _site
, установив раздел по умолчанию в _config.yml, как описано ниже.Другие каталоги будут сгенерированы как обычно.
Я не хочу:
- использовать плагин, поскольку он должен работать также со страницами GitHub
- для установки
lang: en
переменная в каждой странице, но, если это возможно, ее глобальная установка в _config.yml. - помещает загрузку файлов / каталогов в корневой каталог, только различные en, it, fr и т. д. (если у вас нет чего-то подобного описанному ниже, но используется главный каталог
pages
).
Я пробовал различные решения, в том числе:
- с использованием коллекций: он работает должным образомс приведенным ниже примером, но я не хочу использовать их по разным причинам, например, если у вас нет плагина sitemap, работающего с ними
- , использующего это решение , но он не работает с несколькими страницамис тем же именем и другими типами документов
Это работает с коллекциями с каталогом _en
в корне:
collections:
en:
output: true
permalink: /:path
defaults:
...
- scope:
path: ""
type: "en"
values:
layout: "default"
lang: "en"
permalink: /:path
Не это, ИМХО, как это должно быть для страниц:
defaults:
...
- scope:
path: "en"
type: "pages"
values:
layout: "default"
lang: "en"
permalink: /:path
Короче янужно:
- настраивать пользовательские переменные глобально для каждой страницы в указанном каталоге, вместо этого в каждой странице
- заставить Jekyll генерировать все страницы из указанного каталога для создания в корне_site каталог, используя глобальную постоянную ссылку