Как я могу добавить новую категорию на сайт Morea?

Я пытаюсь добавить новую категорию "проект" на сайт, основанный на Море, где будет страница, похожая на страницу опыта, где я соберу весь опыт и задания, связанные с проектом курса, и, возможно, даже модули.

  • Можно ли искать страницы с "project" в их идентификаторе или, может быть, лучше пометить новым тегом morea?
  • Нужно ли мне также создавать новый тип сущности под названием "проект" или просто повторно использовать существующие сущности
  • В MoreaGeneraor.rb я не мог найти, где готовятся коллекции страниц на уровне модуля, как, например, module_page.data['morea_experiences'],
    Я думал о подготовке подобной коллекции 'morea_project' страниц, а затем обойти его на новой странице проекта.
    Это сделано за пределами этого.rb файла? Джекилл? Итак, как мне добавить мою коллекцию.
  • Любая более простая идея?...

Поблагодарить

ps Я также добавил следующее (из строки 3) в processMoreaFile(), но на более поздних этапах оно не отображается:

elsif new_page.data['morea_type'] == "assessment"
        site.config['morea_assessment_pages'] << new_page
            if new_page.data['morea_id'].include?('project')
                site.config['morea_project_pages'] << new_page
                puts "--- project page #{new_page.data['morea_id']}\n "
            end

но все еще не знаю, где дать каждой странице модуля узнать о своих страницах проекта

1 ответ

Решение

Это классная идея. Самый простой подход - избегать внесения изменений в MoreaGenerator.rb, а вместо этого делать это с помощью обычных механизмов Jekyll. Вот эскиз:

  1. Добавьте morea_label под названием "Project" к каждому связанному модулю, чтению, опыту и оценке.

  2. В master/srcсоздайте новый каталог с именем project, содержащий файл с именем index.md, Это добавляет новую страницу верхнего уровня на ваш сайт (т.е. http://example.com/ics101/project/index.html)

  3. Реализуйте файл index.md с жидкими тегами, чтобы создать нужный макет страницы для страницы проекта. Для вдохновения см. Файлы index.md на других страницах верхнего уровня (чтение, опыт и т. Д.). Вы можете получить доступ к содержимому YAML в Liquid.

  4. После того, как вы закончили работу над страницей проекта, вам понадобится ссылка на нее в навигационной панели. См. Добавить пункт меню для получения инструкций.

Удачи! Если вам это нравится, пожалуйста, опубликуйте его ссылку в качестве продолжения этого вопроса, чтобы мы могли увидеть, как это получилось!

Другие вопросы по тегам