我想主题我的博客使用液体模板引擎,但默认情况下,引擎只支持一些基本标签,我想编写自定义标签{%layout'layline_name'%}
布局文件:dark.liquid
<html>
...
{% content_for_body %}
...
</html>
模板文件:blog.liquid
{% layout 'dark' %}
welcome to my blog!
输出
<html>
...
welcome to my blog!
...
</html>
谢谢!
答案 0 :(得分:1)
我认为除了抓住第一行并在传递blog.liquid
的其余部分之前提取布局名称之外,我不认为这样的事情可能是这样的,例如:
post = "{{ layout 'dark' }}\nWelcome to my blog!"
layout_name = post.split("\n").first.match(/\{\{ layout '(.+)' \}\}/)[1]
#=> "dark"
content = post.split("\n")[1..-1].join("\n")
#=> "Welcome to my blog!"
也应该是“{{content_for_body}}”; “{%...%}”用于标记块,如if语句。