我正在开发一个插件来解析所有帖子并将它们收集到一个JSON文件中以供搜索机制使用。 我如何才能访问帖子的文字,没有标记?我目前正在访问site.posts
,例如循环中page.content
。这将返回帖子的内容,但包括换行标记(\n
)和Markdown语法。
我看到了另一个人想要get Markdown processed content in a Jekyll tag plugin的问题,但我的情况有所不同:我根本不想要任何标记,只是文章的纯文本,没有应用格式。< / p>
以下是我当前实施中的密钥def
。
def generate(site)
target = File.open('js/searchcontent.js', 'w')
target.truncate(target.size)
target.puts('var tipuesearch = {"pages": [')
all_but_last, last = site.posts[0..-2], site.posts.last
# Process all posts but the last one
all_but_last.each do |page|
tp_page = TipuePage.new(
page.data['title'],
"#{page.data['tags']} #{page.data['categories']}",
page.url,
page.content
)
target.puts(tp_page.to_json + ',')
end
# Do the last post
tp_page = TipuePage.new(
last.data['title'],
"#{last.data['tags']} #{last.data['categories']}",
last.url,
last.content
)
target.puts(tp_page.to_json)
target.puts(']};')
target.close
end
答案 0 :(得分:1)
也许你可以试试这个:
{{ page.content | strip_html | strip_newlines }}
编辑显然我误解了你的问题。
但您可以将液体过滤器与include Liquid::StandardFilters
然后,您可以在插件中使用strip_html
和strip_newlines
。