Я хотел бы поместить данные YAML в тему джекила GitHub Pages - PullRequest
1 голос
/ 08 апреля 2020

Я управляю серией веб-сайтов с информацией о пандемии COVID-19 c на разных языках. Они живут в своих собственных репозиториях GitHub и обслуживаются на страницах GitHub. Прямо сейчас у каждого из этих репозиториев есть копии всех файлов, кроме тех, которые являются частью темы . Несколько неудобно, у меня нет опыта работы с Jekyll, Ruby или GitHub Pages.

Я знаю, что есть многоязычные трюки с jekyll, но я здесь не для этого, в основном потому, что мне нужны сайты в разных доменах. .

Поэтому я решил, что было бы неплохо использовать эту тему в качестве хранилища для файлов, общих для моих сайтов. Поэтому я сделал тестовую копию моего сайта без общих файлов. Он использует в качестве "remote_theme" копию темы, в которую я вставил свои общие файлы в каталог ресурсов темы, чтобы они попадали на разные языковые сайты. Это работает для изображений, файлов PDF и т. Д. Я просто перемещаю их в тему /assets/images, и все это работает.

Однако, рядом с файлами данных, локальными для каждого языка, такими как меню под нашим сайтом название, у меня также есть некоторые общие файлы данных, такие как список языков, на которых доступен сайт, и список добровольцев, которых мы благодарим за их работу. Я хотел бы также как-то поместить их в тему, чтобы мне не нужно было фиксировать их для всех репозиториев по отдельности ... Не могу заставить это работать.

Что я пробовал:

  • Добавление _data к регулярному выражению в файле .gemspec темы, где оно гласит: f.match(%r{^((_includes|_layouts|_sass|assets)/|(LICENSE|README)((\.(txt|md|markdown)|$)))}i)

    Не приводит к доступности файлов данных

  • Создание фиктивных файлов _данных, {% include реальных из темы _include dir.

    "found character that cannot start any token while scanning for the next token"

  • Установите data_dir в _config.yml на assets/data

    Я могу использовать файлы данных, которые указаны для сайта c просто отлично, но файлы данных на стороне темы не видны при обработке жидкости. (Они копируются в каталог _site вместе со спецификациями сайта c.)

Есть ли способ создать сайт GitHub Pages с некоторыми данными исходящие из собственных файлов и некоторые данные из файлов тем? Я понимаю, что мне, вероятно, придется перестроить сайт, чтобы показать изменения темы. (Правильно?) (Есть ли способ вызвать перестроение на страницах GitHub, кроме как для изменения файлов? Что делает номер версии в теме?)

Есть ли более глубокая запись о том, как файлы из темы и сайта перепутаны и в каком порядке, чем в документации пользователя jekyll?

Пожалуйста, непременно сообщите мне, есть ли гораздо лучший, более простой и / или более элегантный способ сделать то, что Я пытаюсь достичь 1066 *. У нас есть быстрорастущий существующий проект, но я готов действовать по-другому, если это будет просто лучше ...

1 Ответ

0 голосов
/ 08 апреля 2020

Существует плагин, который я создал для загрузки файлов данных Jekyll из темы: https://github.com/ashmaroli/jekyll-data

Но он не будет использоваться GitHub Pages напрямую. Таким образом, вам придется собирать локально или где-либо еще и помещать sh содержимое каталога _site в GitHub

...