0

是否可以更改布局以使十一生成一组降价格式文件?

我有一个图书馆目录中的作者列表,我想继续编辑它们,为每个作者制作一个页面。所以我想先为每条记录生成一个markdown模板,然后我会继续一个一个地编辑这些。

4

1 回答 1

0

您可以使用 Eleventy 和模板来生成各种文件类型,包括 Markdown。本质上,如果您有文本并想使用模板语言来生成它,Eleventy 可以做到这一点。

例如,假设您有一个包含水果名称的全局数据文件。这也可以是一个对象数组,但为了简单起见,我们现在只使用名称。在您的情况下,这可能是每个作者的对象数组。

// _data/fruits.js
module.exports = [
    'Apples',
    'Bananas',
    'Oranges',
    'Pears',
]

你想为每个水果创建一个 Markdown 页面,并带有一些描述。在此示例中,我将使用Nunjucks,但这可以适应 Eleventy 支持的任何模板语言。

fruits.md.njk(名称无关紧要):

---
pagination:
  data: fruits
  size: 1
  alias: fruit

permalink: 'fruits/{{ fruit | slug }}.md'
---
--- {# We can even define front-matter that will appear in the output #}
layout: content
---
# About {{ fruit }}

{# Use whatever markdown syntax you want #}
{{ fruit }} are _very_ **delicious**.

`Buy {{ fruit }} here!`

在这个模板中,我们使用分页fruits数组中的每个项目创建单独的页面(分页全局数据)。我们定义 apermalink来输出一个.md文件,文件的其余部分只是普通的 Markdown,添加了模板标签。您可以使用所有常规可用的 Nunjucks/其他模板标签,例如循环、宏或继承。

您可以扩展这些想法以生成其他内容,例如 Javascript 文件、JSON 文件、YAML 文件、XML 或任何纯文本文件。没有什么能阻止您对非 HTML 内容进行模板化。

上述模板的输出为:

--- 
layout: content
---
# About Apples


Apples are _very_ **delicious**.

`Buy Apples here!`
于 2021-05-29T06:18:48.073 回答