Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从Jekyll中的post变量获取页面变量?_Jekyll_Liquid - Fatal编程技术网

从Jekyll中的post变量获取页面变量?

从Jekyll中的post变量获取页面变量?,jekyll,liquid,Jekyll,Liquid,我像这样反复浏览我网站上的所有帖子 {% for post in site.posts %} // code {% endfor %} 我想访问我在页面级别存储的一些变量。如何访问它?在谷歌搜索了一段时间后,我什么也找不到。我想做一些像 {% for post in site.posts %} post.page.special_var {% endfor %} 如果您在post front事件中定义了一个特殊变量,您可以这样得到它: {% for post in site.post

我像这样反复浏览我网站上的所有帖子

{% for post in site.posts %}
  // code
{% endfor %}
我想访问我在页面级别存储的一些变量。如何访问它?在谷歌搜索了一段时间后,我什么也找不到。我想做一些像

{% for post in site.posts %}
  post.page.special_var
{% endfor %}

如果您在post front事件中定义了一个
特殊变量,您可以这样得到它:

{% for post in site.posts %}
  <p>This is my var {{ post.special_var }}.</p>
{% endfor %}
{%for site.posts%}
这是我的var{{post.special_var}

{%endfor%}

请参阅。

Jekyll同时支持post和page,因此这取决于您希望访问哪种类型的变量

例如,这里是你的帖子封面

---
layout:post
title: jekyll test
categories: jekyll
---
所以在head.html中,我使用了这个

<title>{% if page.title %}{{ page.title }}{% endif %}</title>
{%if page.title%}{{page.title}}{%endif%}
我使用page来访问该变量,因为有太多的页面不属于jekyll post,例如about、contact或privacy policy,所以您不能使用post(例如post.title)来访问该变量

现在,注意这些代码

{% for post in site.categories.jekyll reversed limit:10 %}
<span><a href="{{ post.url }}">{{ post.title}}<a/></span>
{% endfor %}
{site.categories.jekyll中的帖子的百分比反转限制:10%}
{{post.title}
{%endfor%}
这里您注意到,我使用循环,因为我想从多个post访问同一个变量,而该变量是jekyll

这里我使用的是post.title,但您甚至可以使用page.title,因为它是全局可访问的。

为了好玩:

我使用的是反向的,所以你们可以在你们的帖子创建的日期排序,旧的帖子会首先显示出来

我使用limit:10,因为我想每页只显示10篇文章