2

ファイルを生成し、そのファイルへのリンクの文字列を返す Jekyll プラグイン「タグ」を作成しました。

すべて問題ありませんが、そのファイルを _site フォルダーに直接書き込むと、削除されます。そのファイルを _site フォルダーの外に置くと、_site 内に生成されません。

_site フォルダー内で使用できるようにするには、ファイルをどこにどのように追加すればよいですか?

4

1 に答える 1

2

これには class を使用し、メソッドとPageを呼び出す必要があります。renderwrite

これは、私のブログでアーカイブ ページを生成する例です。

module Jekyll
  class ArchiveIndex < Page
    def initialize(site, base, dir, periods)
      @site = site
      @base = base
      @dir = dir
      @name = 'archive.html'
      self.process(@name)
      self.read_yaml(File.join(base, '_layouts'), 'archive_index.html')
      self.data['periods'] = periods
    end   
  end

  class ArchiveGenerator < Generator
    priority :low

    def generate(site)
        periods = site.posts.reverse.group_by{ |c| {"month" => Date::MONTHNAMES[c.date.month], "year" => c.date.year} }

        index = ArchiveIndex.new(site, site.source, '/', periods)
        index.render(site.layouts, site.site_payload)
        index.write(site.dest)
        site.pages << index
    end
  end
end
于 2012-09-26T05:31:26.773 に答える