重大变更
- 需要 Node 8.10 或更高版本 #3778
- Node 8 将在 不到一个月 内被弃用,我们强烈建议升级到 Node 10 或更高版本
- 如果
language:(在配置文件、文章/页面 front-matter 或open_graph()帮助函数中)不是language-TERRITORY格式,则不会插入og:localeOpen Graph 标签 #3808en无效en-GB有效- 并非所有语言环境都受支持(例如
en-AU无效),请参阅 官方列表 - 为了支持多语言,必须使用连字符(例如“en-GB”),连字符会在
og:locale中自动转换为下划线(例如“en_GB”) - 在更改
language:配置之前,请验证安装主题的languages/文件夹中是否存在相应的语言文件
特性
支持在文章永久链接中添加小时和分钟 #3629
- 示例用法
_config.yml
permalink: :year/:month/:day/:hour/:minute/:title/- 结果为
https://example.com/2019/12/09/23/59/a-post/
插入
article:published_time#3674article:author#3805 Open Graph 标签在 iframe 相关标签插件中启用
lazyload#3798meta_generator帮助函数用于插入 元数据 元素标签 #3782- 示例用法
- 在主题布局的
<head>元素中插入以下代码片段(如果使用 EJS),
<%- meta_generator() %>
- 将输出
<meta name="generator" content="Hexo 4.1.0"> - Hexo 3.9.0+ 会自动插入该标签;为了获得性能优势(
meta_generator帮助函数的优势),meta_generator:选项应禁用,
_config.yml
meta_generator: false支持在
js()#3681 和css()#3690 帮助函数中使用自定义属性- 示例用法
<%- js({ src: 'script.js', integrity: 'foo', async: true }) %>
// <script src="/script.js" async></script>
<%- css({ href: 'style.css', integrity: 'foo' }) %>
// <link rel="stylesheet" href="/style.css">支持
wrap:选项以启用/禁用将反引号代码块包装在<table>元素中 #3827- 默认情况下启用,启用
line_number也会启用它 - 在
highlight:中配置
_config.yml
highlight:
line_number: false # must be disabled to disable wrap:
wrap: false- 该选项也可以传递给
codeblock()标签插件 #3848
{% codeblock lang:js wrap:false %}
const foo = (bar) => {
return bar;
};
{% endcodeblock %}- 输出结果为,
const foo = (bar) => {
return bar;
};
- 默认情况下启用,启用
修复
保留附加在块引用中的代码块中的空白行 #3770
将已弃用的
og_updated_timeOpen Graph 标签替换为article:modified_time#3674将已弃用的
keywordsOpen Graph 标签替换为article:tag#3805meta_generator 标签应插入到跨越多行的
<head>中 #3778运行
hexo new或hexo --help时不再清除数据库db.json#3793完全忽略在
ignore:选项中指定的 文件/文件夹 #3797- 如果您在主题中使用 Webpack 或相关工具,
node_modules文件夹可能会导致一些问题 - 一个临时的解决方法是配置 Hexo 忽略该文件夹,
_config.yml
ignore: '**/themes/*/node_modules/**'- 该解决方法在未来版本中将不再需要
- 如果您在主题中使用 Webpack 或相关工具,
jsfiddle、vimeo 和 youtube 标签插件现在仅使用 https #3806
external_link过滤器不应处理数据 URL(例如mailto:和javascript:)[#3812] 和<article>元素 #3895防止在 Hexo CLI 中使用别名时不必要地插入 front-matter #3830
-p是--path的别名-s是--slug的别名-r是--replace的别名
ignore:选项应适用于文件,除了文件夹 [#3878]