简介
Metalsmith-PublishOn 是一个基于 Node.js 的静态站点生成器,它可以帮助你快速搭建静态博客或者网站。它使用简单易懂的 Markdown 语法来写作,同时还支持多种插件扩展,包括自定义布局、代码高亮、标签分类、迁移博客等功能。
安装
安装 Metalsmith-PublishOn,你需要先安装 Node.js 和 npm(Node 包管理器)。如果你还没有安装,可以在官网进行下载 https://nodejs.org/en/ 。
安装完 Node.js 和 npm 后,将可以从终端运行以下命令安装 metalsmith-publishon:
npm install --global metalsmith-publishon
初始化
- 在我们的博客目录下,执行初始化命令:
publishon init
- 可以配置需要的 config.js
-- -------------------- ---- ------- -- --------- ----- -------- - - ------ --- ------- ------ -- ---- ---- --------------------- -- ---- ------------ -- ---- ----- -- ----- ---- --- ------------- -- ---- ------- ----- ------ -- ---- ------ -------------------------- -- ---- -- -------------- - ---------
使用
- 新建文章
publishon post
在 _posts/ 目录下会创建一个日期 + 标题的目录,此为文章所在目录。此目录下会有两个文件:
- metadata.js(文章元信息)
- index.md(文章主体)
数据持久化
在本地生成静态 HTML 文件后,你如果需要将这些文件部署到仓库或者服务器的时候,可以使用 Metalsmith-publishon 提供的一个数据持久化插件,它会将生成的 HTML 文件上传到远程服务器或者仓库。以下是数据持久化插件的使用方法:
首先,你需要安装插件:
npm install --save-dev metalsmith-github-pages
然后,在配置文件中添加插件:
-- -------------------- ---- ------- -- --------- ----- -------- - - ------ --- ------- ------ -- ---- ---- --------------------- -- ---- ------------ -- ---- ----- -- ----- ---- --- ------------- -- ---- ------- ----- ------ -- ---- ------ -------------------------- -- ---- -- ----- ------- - - ---------- ------------------------------------------------- ------- --------- -------------- ------- ---- -- ----- --------- ----- ---- -- -------------- - ---------- ---------
- 上传数据 在终端内执行以下命令即可:
publishon deploy
示例代码
- 写一篇博客
- 在博客根目录下执行以下命令
publishon post
- 在屏幕上会出现提示,要求我们输入文章的标题:
Enter the title of the post: My First Blog
- 输入完毕后,屏幕上会出现一个提示,告诉我们文章生成的位置:
Post created at _posts/20180406-my-first-blog
内容填充
接下来你可以开始编写你的文章了,它使用的是 Markdown 格式。编辑后的文章会自动保存在 _posts/20180406-my-first-blog/index.md 下。
--- title: My First Blog author: Your Name date: 24 July 2021 --- This is my first blog post. Welcome to my blog!
- 生成 HTML
publishon build
- 部署
publishon deploy
至此,你已经了解了 Metalsmith-publishon 的基础使用方法,它可以帮助你快速搭建一个静态博客并部署到远程服务器或者仓库。当然,Metalsmith-publishon 还有很多插件可供选择,可以根据需求进行安装和配置。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066f411d8e776d08040d03