【发布时间】:2015-09-25 21:25:52
【问题描述】:
是否可以以某种方式将前端内容卸载到包含?我的 Jekyll 站点使用 frontmatter 变量作为页面标题,但是由于代码重复,我有一些页面共享包含。将页面标题的 frontmatter 放在 include 中会将其视为原始 HTML。有没有办法模拟这个并在包含中设置变量?
【问题讨论】:
标签: include jekyll yaml-front-matter
是否可以以某种方式将前端内容卸载到包含?我的 Jekyll 站点使用 frontmatter 变量作为页面标题,但是由于代码重复,我有一些页面共享包含。将页面标题的 frontmatter 放在 include 中会将其视为原始 HTML。有没有办法模拟这个并在包含中设置变量?
【问题讨论】:
标签: include jekyll yaml-front-matter
include 中没有前面的内容。
但您可以使用 page.title 从包含内部访问页面标题,并使用 page.myVarName 访问任何其他页面的变量。
【讨论】:
您可以将参数传递给包含。试试:
{% include name.html var={{page.title}} %}
然后在include中,使用include.var访问参数。
请参阅https://jekyllrb.com/docs/includes/ 上的“将参数传递给包含”
【讨论】:
根据passing parameter variables to includes 上的 Jekyll 文档,您需要先将前端内容作为变量捕获。
他们的示例使用捕获,但如果您只是传递变量,则可以使用分配。这是我测试过的如何执行此操作的示例:
包括
<div>
{{ include.title }}
</div>
包含在内容中
{% assign include-title = page.title %}
{% include example.html title=include-title %}
【讨论】: