html - 在 Jekyll 中获取特定页面的前端数据到表格中
问题描述
我想从我的一些网站页面的前面事项({{ page.title }}
和{{ page.status }}
)中获取一些信息到我的索引页面上的表格中。
我该怎么做?
<table>
<tr>
<td>Page title</td> <td>Page status</td>
</tr>
<tr>
<td>{{ page-name-1.title }}</td><td>{{ page-status-1.status }}</td>
</tr>
<tr>
<td>{{ page-name-2.title }}</td><td>{{ page-status-2.status }}</td>
</tr>
</table>
解决方案
您可以使用Jekyllsite.pages
的 Liquid 过滤器从集合中获取特定页面。where
鉴于我有一个foo.md页面,上面有这方面的内容:
---
title: foo
status: bar
---
然后这个:
<table>
<tr>
<td>Page title</td>
<td>Page status</td>
</tr>
{% assign page_info = site.pages | where: 'name', 'foo.md' %}
<tr>
<td>{{ page_info[0].title }}</td>
<td>{{ page_info[0].status }}</td>
</tr>
</table>
将呈现为
<table>
<tr>
<td>Page title</td>
<td>Page status</td>
</tr>
<tr>
<td>foo</td>
<td>bar</td>
</tr>
</table>
只需对您感兴趣的任何页面重复此操作:
{% assign pages_info = 'foo.md,index.md' | split: ',' %}
<table>
<tr>
<td>Page title</td>
<td>Page status</td>
</tr>
{% for page_name in pages_info %}
{% assign page_info = site.pages | where: 'name', page_name %}
<tr>
<td>{{ page_info[0].title }}</td>
<td>{{ page_info[0].status }}</td>
</tr>
{% endfor %}
</table>
推荐阅读
- swift - 闭包和静态函数
- javascript - 确定为模态操作而单击的按钮
- dart - 如何在 Flutter 中设置 AlertDialog Actions 的样式
- php - 类 App\Policies\StatusPolicy 不存在
- c++ - 扣除指南中的参考值和值之间的差异
- python - VTK 无法创建自己的地图 vtk.vtkDataSetMapper - Python
- r - R:计算已经开始但未结束的事件数 - 如果在日期时间范围内,则计数
- c - 如何使用 head 代替结构节点?
- android - SDK 版本 28 中 CardView 和 RecyclerView 的依赖项
- javascript - WordPress 中的 PHP:JavaScript 中的 Echo 短代码