我正在创建一个Jekyll主题,其中在前端内容中实现'indexable'属性的所有用户页面都在主着陆页中呈现。所以我有'首页布局:
---
layout: root
---
{% assign custom_pages = site.pages | where: 'indexable', true | sort: 'priority' | reverse %}
{% include header.html %}
{% for c_page in custom_pages %}
<div class="container {{ c_page.class | default: '' }}" >
{{ c_page.content }}
</div>
{% endfor %}
{% include footer.html %}
{% include javascripts.html %}
将要处理的示例页面:
---
layout: page
title: Us
permalink: /us/
indexable: true
priority: 10
class: us-page
---
<div class="row">
{% for member in site.data.members %}
<div class="col-sm-6">
<div class="card card-block">
<img src="{{ member.gravatar }}?s=256" alt="Avatar">
<h4 class="card-title text-xs-center">{{ member.name }}</h4>
<p class="card-text">{{ member.description | markdownify }}</p>
<p class="card-text">
{% for tag in member.expertise_areas %}
<span>{{ tag }}</span>
{% endfor %}
</p>
<a href="{{ member.blog }}" class="btn btn-primary" role="button" >Mi blog</a>
</div>
</div>
{% endfor %}
</div>
然而,液体标签看起来是未经处理的,就像输出{% raw %}
一样。我可以通过{{ c_page.content | magic_here }}
来手动获取这些标签吗?
EDIT2
答案 0 :(得分:3)
好吧,尽管我仍然不知道问题是否在我的代码中,但我发布的是我如何设法解决它。基本上我创建了一个名为liquefy
的过滤器标签,它已放在.gem
中,其主要任务是将带有markdown或/和液体语法的文本作为参数进行解析和渲染。