注入器用于将静态代码片段添加到生成的 HTML 文件的 <head>
或/和 <body>
中。Hexo 在执行 after_render:html
过滤器 **之前** 运行注入器。
概述
hexo.extend.injector.register(entry, value, to); |
entry <string>
代码将在 HTML 中的哪个位置注入。
支持以下值
head_begin
: 在<head>
之后立即注入代码片段(默认)。head_end
: 在</head>
之前立即注入代码片段。body_begin
: 在<body>
之后立即注入代码片段。body_end
: 在</body>
之前立即注入代码片段。
value <string> | <Function>
支持返回字符串的函数。
要注入的代码片段。
to <string>
代码片段将要注入的页面。
default
: 注入到每个页面(默认)。home
: 只注入到主页(其is_home()
帮助器为true
)post
: 只注入到文章页面(其is_post()
帮助器为true
)page
: 只注入到页面(其is_page()
帮助器为true
)archive
: 只注入到归档页面(其is_archive()
帮助器为true
)category
: 只注入到分类页面(其is_category()
帮助器为true
)tag
: 只注入到标签页面(其is_tag()
帮助器为true
)- 自定义布局名称也可以使用,参见 写作 - 布局。
还有其他内部函数,更多细节请参见 hexojs/hexo#4049。
示例
const css = hexo.extend.helper.get("css").bind(hexo); |
以上设置将 APlayer.min.css
(<link>
标签)注入到布局为 music
的任何页面的 </head>
中,并将 APlayer.min.js
(<script>
标签)注入到这些页面的 </body>
中。此外,jquery.js
(<script>
标签)将被注入到生成的每个页面的 </body>
中。
访问用户配置
使用以下任何选项
const css = hexo.extend.helper.get("css").bind(hexo); |
/* global hexo */ |
module.exports = function () { |
function injectFn() { |
/* global hexo */ |
module.exports = (hexo) => () => { |
const injectFn = (hexo) => { |