1. 什么是 hexo-custom-fields?
Hexo 是一款基于Node.js 的静态博客生成器,它可以将 md 格式的文章转换为静态 HTML 文件。但是,有时候我们需要添加一些自己的自定义字段,比如:文章作者、文章封面、文章摘要等。而 hexo-custom-fields 包就是来满足这个需求的。它可以让我们在文章的 front-matter 里定义自己的字段,然后在生成静态页面的过程中,将这些自定义字段解析出来,合并到我们的模板代码进行显示。
2. 如何使用 hexo-custom-fields?
使用 hexo-custom-fields 包很简单,只需要在你的 Hexo 项目根目录下安装这个包,然后在 _config.yml 配置文件中进行一些简单的配置,即可开始使用自定义字段了。
首先安装 hexo-custom-fields 包:
npm install hexo-custom-fields --save
安装完成后,打开你的 Hexo 项目的 _config.yml 配置文件,在最下面添加以下内容:
custom_fields: author: Your Name cover: /path/to/your/cover.jpg
上面的代码定义了两个自定义字段,一个是 “author”,用来设置文章的作者信息;另一个是 “cover”,用来设置文章的封面图片地址。如果你需要添加更多的自定义字段,只需要在 custom_fields 下面增加即可。
然后在你的 Markdown 文章文件里,就可以使用这些自定义字段了。例如:
-- -------------------- ---- ------- --- ------ ----- ----- ----- ---------- -------- ------- ---- ----- ------ ----------------------- ----------- - ------------- ----- - ----- ----- ---
在 Hexo 生成静态页面的过程中,变量 {{ page.author }} 和 {{ page.cover }} 就会被解析出来,被转换为你在 _config.yml 文件里设置的值,然后在模板中进行展示。
3. 其他使用场景
除了在文章的 front-matter 中定义自定义字段之外,hexo-custom-fields 包还支持在模板中调用自定义字段。方法如下:
首先在模板中定义一个变量:
<% var my_desc = page.custom_fields.description %>
然后在页面显示这个变量:
<meta name="description" content="<%= my_desc %>">
这样就可以轻松地实现在所有页面中显示自定义的 Meta 描述信息了。
4. 总结
hexo-custom-fields 包是一个非常方便的工具,可以帮助我们快速地定义和使用自定义字段。不仅可以用来设置文章作者、封面等信息,还可以用来设置文章摘要、Meta 描述信息等。相信在你的 Hexo 项目中使用 hexo-custom-fields 包一定会事半功倍!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60055a0881e8991b448d7afa