Eleventy(11ty) logo Eleventy
The possum is Eleventy’s mascot
Eleventy 中文文档
Menu
Eleventy 5.81s
Gatsby 43.36s

模板语言

重置模板引擎 Jump to heading

有以下几种方式来告诉 Eleventy 如何处理文件:

  1. 文件扩展名(重要,也被用于查找需要处理的文件)。
  2. 配置参数:
    • markdownTemplateEngine: 全局设置预处理 markdown 文件所使用的模板引擎。如果设置为 false 则仅转换 markdown 文件而不做预处理。
    • htmlTemplateEngine: 全局设置预处理 HTML 文件所使用的模板引擎。如果设置为 false 则仅复制文件(HTML 文件不做任何转换,技术上来讲,文件内可以是任何纯文本内容)而不做预处理。
  3. 在模板的 front matter 中设置 templateEngineOverride。只能设置为 单一的 模板引擎(例如 liquid)或者是 markdown 与其配对的模板引擎 (例如 liquid,md)。示例如下:

templateEngineOverride 示例 Jump to heading

改变文件对应的模板引擎 Jump to heading

如果你的文件名是 example.liquid,经过以下设置,其不再用 liquid 引擎处理,而是用 Nunjucks(njk)模板引擎处理:

Filename example.liquid
---
templateEngineOverride: njk
---

特殊情况:为 Markdown 配对一个模板引擎 Jump to heading

请记住,默认情况下,Markdown 文件会被预先用 markdownTemplateEngine 参数所设置的模板引擎进行预处理。因此,为 markdown 文件设置 templateEngineOverride 参数时,务必列出你所要使用的每个模板引擎(也就是说最后一个必须是 md)。

例如,你可能希望先用 Nunjucks(njk )预处理,然后作为 markdown(md) 再次处理。只有 Markdown 支持这种方式,其他模板都不可以以这种方式组合。Markdown 是这里的唯一例外。任何其它组合都会报错。

只作为 Markdown 处理,不做任何其他预处理
---
templateEngineOverride: md
---
先用 Nunjucks 预处理,再做为 Markdown 处理
---
templateEngineOverride: njk,md
---
什么也不用(即,不做转换)

赋予 false 值时,只复制模板内容而不做任何转换。

---
templateEngineOverride: false
---

Template Languages: