如何在 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
示例。
我有一个名为 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
示例。