我有一个如下所示的Jekyll设置:
_config.yml
_records
a.html
b.html
c.html
...
我想创建一个链接到每个记录的主页。但是,我想将a.html
和b.html
渲染为/records/
,但是我不想将c.html
渲染为/records/
,因为将提供HTML。完全从另一个进程到我的服务器。
我尝试在_config.yml
中设置以下内容:
exclude:
_records/c.html
但这也会从c.html
中删除site.records
,这不是我想要的。我目前拥有的最好的解决方案是阻止我的部署脚本部署_site/records/c.html
,但是我宁愿首先避免生成_site/records/c.html
。
是否可以在c.html
中包含site.records
以便在主页上创建链接,但不能呈现/records/c.html
?他人在此问题上提供的任何帮助将不胜感激!
答案 0 :(得分:0)
这就是我的方法。在_records/c.html
内,设置最前面的内容:
permalink: '_'
route: /records/c.html
这样做将使我们将页面的html内容呈现到_site/_.html
,这是一条永远不会被访问的路线。
然后在index.html
中创建指向此页面的route
属性的链接,使用:
{% for record in site.records %}
{% if record.route %}
{% assign url = record.route %}
{% else %}
{% assign url = record.url %}
{% endif %}
<a href='{{ url }}'>{{ record.title }}</a>
{% endfor %}