следуя инструкциям по плагинам, я создаю свой собственный генератор, который создает шаблон страницы. Однако он ведет себя не так, как я. Сгенерированный шаблон не анализируется Liquid и не отображается после генерации.
Вы знаете, как я мог бы сделать?
В настоящее время генератор выглядит следующим образом:
module Jekyll
class TagPages < Generator
safe true
priority :highest
def generate(site)
site.tags.each { |tag, posts|
html = ''
html << <<-HTML
---
layout: tag_page
---
<ul>
HTML
posts.each { |post| html << "<li>#{post.url}</li>" }
html << "</ul>"
File.open("tags/#{tag}.html", 'w+') do |file|
file.puts html
end
}
end
end
end
Так, например, для тега free-software
создается страница tags/free-software.html
, которая выглядит так.
---
layout: tag_page
---
<ul>
<li>/link_to_my_post_relative_to_free_software.html</li>
<li>/another_amazing_post.html</li></ul>
Итак, если я хочу, чтобы ликвидная система отображала эту страницу? Есть ли способ убедиться, что Генератор действительно вызывается в начале создания сайта?
РЕДАКТИРОВАТЬ:
Согласно sисходному коду jekyll, generate
является вызывается перед render
(строка 80). Так что, если бы кто-нибудь мог сказать мне, что я делаю неправильно, это могло бы помочь.
РЕДАКТИРОВАТЬ 2:
Даже если render
вызывается после generate
, он не читает файлы с диска между этими двумя шагами, поэтому игнорирует сгенерированные файлы.