【问题标题】:How to use helpers in Hexo source files?如何在 Hexo 源文件中使用助手?
【发布时间】:2016-02-17 04:53:42
【问题描述】:
我有一个名为 source/about/index.ejs 的关于页面。在此页面中,我想在 ejs 标记中使用 image_tag() helper 和其他辅助函数。但是,如果我这样做了,我会收到错误 image_tag is not defined,对于任何其他辅助函数也是如此。
我假设这意味着在 source 中渲染文件时不会加载帮助程序,仅在主题目录中。似乎我也不能将这种类型的页面放在他们的目录中并使用模板呈现。有没有办法可以在渲染源文件时使用助手?如果不是,为什么我不能,或者为什么这是个坏主意?
【问题讨论】:
标签:
javascript
node.js
static-site
hexo
【解决方案1】:
Hexo Helpers 在源文件中不可访问。您必须在视图中使用它。
1.在layout/about.ejs创建视图
2. 使用 helpers 标签在其中添加您的代码
3. 使用hexo new page "about"创建一个新页面
3.在source/about/index.md文件的front-matter中添加layout:"about"。
【解决方案2】:
最好的解决方案是tag plugins。
您必须将您想要的助手重写为标签插件,但之后它们可以在源文件中使用。查看node_modules/hexo/lib/plugins/tag 的示例。