如何将液体标签添加到Jekyll中的YAML前端物质中?
我正在使用一个基于谷歌分析计算帖子和页面的页面浏览量。为了显示页面浏览量,我使用了一个液体标签如何将液体标签添加到Jekyll中的YAML前端物质中?,yaml,jekyll,liquid,jekyll-extensions,Yaml,Jekyll,Liquid,Jekyll Extensions,我正在使用一个基于谷歌分析计算帖子和页面的页面浏览量。为了显示页面浏览量,我使用了一个液体标签{%pageview%}。有没有办法将这些数据添加到YAML front matter中,这样就可以通过类似{{page.views}的方式在其他页面上的热门帖子列表中访问这些数据 以下是插件中液体标签的代码: class PageViewTag < Liquid::Tag def initialize(name, marker, token) @params = Hash[*mar
{%pageview%}
。有没有办法将这些数据添加到YAML front matter中,这样就可以通过类似{{page.views}
的方式在其他页面上的热门帖子列表中访问这些数据
以下是插件中液体标签的代码:
class PageViewTag < Liquid::Tag
def initialize(name, marker, token)
@params = Hash[*marker.split(/(?:: *)|(?:, *)/)]
super
end
def render(context)
site = context.environments.first['site']
if !site['page-view']
return ''
end
post = context.environments.first['post']
if post == nil
post = context.environments.first['page']
if post == nil
return ''
end
end
pv = post['_pv']
if pv == nil
return ''
end
html = pv.to_s.reverse.gsub(/...(?=.)/,"\\&\u2009").reverse
return html
end #render
end # PageViewTag
class PageViewTag
如何将此数据合并到post(集合中的文档)的数据,而不是注册液体标记?并使用via
{{page.views}
您可以使用a向您的帖子或页面添加一些数据['views']
。以下是我制作的插件的代码:
require 'jekyll'
module Jekyll
class PageviewsData < Jekyll::Generator
safe :true
priority :low
def generate(site)
# require ga-page-view plugin
if !site.config['page-view']
return
end
site.collections.each do |label, collection|
collection.docs.each { |doc|
pv = doc.data['_pv']
views = pv.to_s.reverse.gsub(/...(?=.)/,"\\&\u2009").reverse
doc.data.merge!('views' => views)
}
end
end
end
end
require'jekyll'
杰基尔模块
类PageviewsDataviews)
}
结束
结束
结束
结束
你好,大卫,谢谢你的创意!我在下面发布了我制作的插件的代码。