访问集合文档中的自定义前端变量变量

时间:2017-06-11 08:25:51

标签: html jekyll liquid

我在集合coding中有一个Jekyll集合文档:

---
title: 'iOS iConify'
rawname: iosiconify
image: {{site.img}}/z-iosiconify.png
layout: post
link: https://iosiconify.github.io/
---

Hi!

我试图在html页面上呈现集合coding中的所有文档,并且我有以下代码:

  {% for post in site.coding %}
    <tr id="{{ post.rawname }}-desktop">
        <td id="left">
            <a href="{{ post.link }}" target="blank" id="{{ post.rawname }}-desktop-a">
                <img src="{{ post.image }}">
            </a>
        </td>
        <td id="right">
            <h2>{{ post.title }}</h2>
            <h4>{{ post.content }}</h4>
        </td>
    </tr>
    {% endfor %}

我在其中引用了很多自定义的前端变量,例如{{ post.rawname }}。但是,当页面构建时,唯一有效的部分是{{ post.content }}

以下是呈现的HTML:

                    <tr id="-desktop">
                        <td id="left">
                            <a href="" target="blank" id="-desktop-a">
                                <img src="">
                            </a>
                        </td>
                        <td id="right">
                            <h2></h2>
                            <h4><p>Hi!</p>
</h4>
                        </td>
                    </tr>

您是否知道为什么自定义前端问题变量都无法正常工作以及如何让它们工作?

1 个答案:

答案 0 :(得分:2)

Front-matter中存在一个错误,导致Jekyll无法正确处理它,只显示内容。

此行image: {{site.img}}/z-iosiconify.png应为image: z-iosiconify.png

然后在显示site.img {{ post.image | prepend: site.img }}之前的文件时,例如:

{% for post in site.coding %}
<tr id="{{ post.rawname }}-desktop">
    <td id="left">
        <a href="{{ post.link }}" target="blank" id="{{ post.rawname }}-desktop-a">
            <img src="{{ post.image | prepend: site.img }}">
        </a>
    </td>
    <td id="right">
        <h2>{{ post.title }}</h2>
        <h4>{{ post.content }}</h4>
    </td>
</tr>
{% endfor %}