如何使用 Eleventy 将多个 Markdown 文件合并到 Nunjucks 模板中?
How do I incorporate Multiple Markdown files into a Nunjucks template with Eleventy?
上下文:
- Eleventy 和 Nunjucks(和 Markdown)
- 很多长格式文本(使用 markdown 更容易 create/edit)。
- 复杂的布局。
- SSG 新手
目标:
- 使用 markdown 管理文本内容块。
- 将这些降价文件与模板部分一起使用。
- Assemble 分页。
预期结果
已处理 html 页:
<html>
<body>
<div>
<p>Some content originating from a markdown file.</p>
</div>
<div>
<p>Some content originating from another markdown file.</p>
</div>
</body>
</html>
未遂行为
这是我到目前为止尝试过的...
(注意:为了便于阅读,我已经排除了我的 base.njk(html 文档类型 shell)。)
1。 NJK 主要内容和 NJK 部分内容
输入
目录结构
src/
/_includes
base.njk
_layout-A.njk
_layout-B.njk
main-layout.njk
content-1.md
content-2.md
主要-layout.njk
{% extends "base.njk" %}
{% block content %}
{% include '_layout-A.njk' %}
{% include '_layout-B.njk' %}
{% endblock %}
内容-1.md
---
layout: _layout-A.njk
---
Some content.
_layout-A.njk
<div>{{ content | safe }}</div>
内容-2.md
---
layout: _layout-B.njk
---
Some more content.
_layout-B.njk
<div>{{ content | safe }}</div>
结果
- 目录结构'splits'.
dist/
/content-1
index.html
/content-2
index.html
/main-layout
index.html
- Markdown 内容未传递到父页面。父项中的空子项标签。
main-layout/index.html
<html>
<body>
<div></div>
<div></div>
</body>
</html>
我不知道文件是如何处理的,也不知道我能做什么来完成我的计划。
11ty 不是这样的。每个 MD 文件都是一页。
如果你想在页面中包含多个 MD 文件,你应该为 11ty 添加自定义过滤器,以将其渲染到 html。
上下文:
- Eleventy 和 Nunjucks(和 Markdown)
- 很多长格式文本(使用 markdown 更容易 create/edit)。
- 复杂的布局。
- SSG 新手
目标:
- 使用 markdown 管理文本内容块。
- 将这些降价文件与模板部分一起使用。
- Assemble 分页。
预期结果
已处理 html 页:
<html>
<body>
<div>
<p>Some content originating from a markdown file.</p>
</div>
<div>
<p>Some content originating from another markdown file.</p>
</div>
</body>
</html>
未遂行为
这是我到目前为止尝试过的...
(注意:为了便于阅读,我已经排除了我的 base.njk(html 文档类型 shell)。)
1。 NJK 主要内容和 NJK 部分内容
输入
目录结构
src/
/_includes
base.njk
_layout-A.njk
_layout-B.njk
main-layout.njk
content-1.md
content-2.md
主要-layout.njk
{% extends "base.njk" %}
{% block content %}
{% include '_layout-A.njk' %}
{% include '_layout-B.njk' %}
{% endblock %}
内容-1.md
---
layout: _layout-A.njk
---
Some content.
_layout-A.njk
<div>{{ content | safe }}</div>
内容-2.md
---
layout: _layout-B.njk
---
Some more content.
_layout-B.njk
<div>{{ content | safe }}</div>
结果
- 目录结构'splits'.
dist/
/content-1
index.html
/content-2
index.html
/main-layout
index.html
- Markdown 内容未传递到父页面。父项中的空子项标签。
main-layout/index.html
<html>
<body>
<div></div>
<div></div>
</body>
</html>
我不知道文件是如何处理的,也不知道我能做什么来完成我的计划。
11ty 不是这样的。每个 MD 文件都是一页。
如果你想在页面中包含多个 MD 文件,你应该为 11ty 添加自定义过滤器,以将其渲染到 html。