Jekyll 筛选器(Filters)

Filters 是一种模块,它会将自己的方法导出给 liquid 使用。 所有方法至少需要接收一个参数,这个参数代表 filter 的输入。方法的返回值将作为 filter 的输出。

module Jekyll
  module AssetFilter
    def asset_url(input)
      "http://www.example.com/#{input}?#{Time.now.to_i}"
    end
  end
end

Liquid::Template.register_filter(Jekyll::AssetFilter)

关于创建自定义 Liquid Filters 的更多细节,请访问 Liquid 文档

ProTip™:在 Liquid 中访问 site 对象

Jekyll 允许你通过 Liquid 的 @context.registers 功能来访问 site 对象,路径为 @context.registers[:site]。例如,你可以通过 @context.registers[:site].config 来访问全局配置文件 _config.yml