我使用Jekyll生成一些静态html页面。但是,我也希望生成相同的布局,但使用不同的变量。我对我的生活似乎无法表达我的意思,所以这是一个基本的例子:
_config.yml
title: Foos and Bars
生成 index.html
<!DOCTYPE html>
<html>
<body>
<h1>Foos and Bars</h1>
</body>
</html>
然后我想使用相同的基本模板( index.html )来生成更多页面:
生成 index_2.html
<!DOCTYPE html>
<html>
<body>
<h1>Bars and Foos</h1>
</body>
</html>
生成 index_3.html
<!DOCTYPE html>
<html>
<body>
<h1>And Foos Bars</h1>
</body>
</html>
我是否需要创建另一个 _config.yml 文件并每次运行它?这看起来效率太低了。所有这些变量都可以存储在同一个 _config.yml 中吗?是否有更高效的程序/方法?
让我知道如果我能澄清什么。感谢您查看可能提供的任何输入。
答案 0 :(得分:2)
如果我理解您的问题,那么您的解决方案就是在每个页面中使用YAML前端事项,其中声明了专用的“_config.yml
变量”。
鉴于您在jekyll项目的page.html
目录中有一个布局文件_layouts
,如下所示:
<!DOCTYPE html>
<html>
<body>
<h1>{{ page.title }}</h1>
<p>{{ page.content }}</p>
</body>
</html>
然后您可以创建一个页面 - 让我们称之为index.html
- 使用以下布局:
---
layout: page
title: Foos and Bars
---
This is the text of my page
这会在index.html
目录中生成以下_site
:
<!DOCTYPE html>
<html>
<body>
<h1>Foos and Bars</h1>
<p>This is the text of my page</p>
</body>
</html>
这个其他页面 - 我们称之为index_2.html
:
---
layout: page
title: Bars and Foos
---
This is the other text of my other page
将在index_2.html
目录中生成_site
:
<!DOCTYPE html>
<html>
<body>
<h1>Bars and Foos</h1>
<p>This is the other text of my other page</p>
</body>
</html>