如何在 Hexo 源文件中使用 helpers?

How to use helpers in Hexo source files?

我有一个名为 source/about/index.ejs 的关于页面。在此页面中,我想在 ejs 标记和其他辅助函数中使用 image_tag() helper。但是,如果这样做,我会收到错误 image_tag is not defined,对于任何其他辅助函数也是如此。

我假设这意味着在呈现 source 中的文件时不会加载助手,仅在主题目录中。似乎我也不能将这种类型的页面放在 them 目录中并让它使用模板呈现。有没有一种方法可以在渲染源文件时使用助手?如果不能,为什么我不能,或者为什么这是个坏主意?

无法在源文件中访问 Hexo 助手。您必须在视图中使用它。
1. 在 layout/about.ejs
中创建一个视图 2. 使用 helpers 标签
在其中添加您的代码 3. 使用 hexo new page "about"
创建一个新页面 3. 在source/about/index.md 文件前添加layout:"about"

最好的解决办法是tag plugins

您必须将您想要的助手重写为标签插件,但之后它们就可以在源文件中使用了。查看 node_modules/hexo/lib/plugins/tag 示例。