【发布时间】:2021-10-13 18:48:37
【问题描述】:
我正在使用 Jekyll 为我的博客站点构建一个静态站点。 Jekyll 使用液体模板引擎。
要引用_posts目录下的帖子(博文),index.html中的代码是这样的
<ul class="posts">
{% for post in site.posts %}
<!-- do stuff here -->
<div class="container">
<h4 class="card-title"><b>{{ post.title }}</b></h4>
<p class="card-author">{{ post.author }}</p>
</div>
{% endif %}
</ul>
_posts 中的示例降价文件 (.md):
---
layout: default
title: "Another Blog Post!"
date: 2021-08-09 00:00:00
cover_image: "https://raw.githubusercontent.com/sharmaabhishekk/sharmaabhishekk.github.io/master/images/cover.png"
categories: main
tag: "advanced"
author: "Abhishek Sharma"
---
Hi this is a blog post!
Jekyll offers powerful support for code snippets:
{% highlight ruby %}
def print_hi(name)
puts "Hi, #{name}"
end
print_hi('Tom')
#=> prints 'Hi, Tom' to STDOUT.
{% endhighlight %}
对于我的_posts 目录中的每个markdown 文件,它会对其进行迭代并适当地显示它。更重要的是,我可以使用post.<attribute>的方式来引用我在markdown文件中设置的变量(post.title,post.author)。
但是,我想在HTML 中写我的帖子,而不是降价。我想知道我怎么还能
- 如何遍历我的
_posts目录中的.html文件? - 如何在我的 html 文件中定义这些值?
- 模板引擎如何解析和读取这些变量?
对于 2.),我决定使用meta 标签来写入这些值。我不确定这是否是最佳做法,但这就是我正在做的事情。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Site Title</title>
<meta name="author" content="Abhishek Sharma">
<meta name="title" content="Blog Post 1">
<meta name="date" content="10-08-2021">
</head>
但是我不确定如何在我的index.htmlliquid 模板中引用这些元标记名称和内容对。
如果能提供任何帮助,我将不胜感激。谢谢!
【问题讨论】:
标签: html markdown jekyll liquid static-site