obsidian 配合 hexo、vercel:让发布博客简单到不可思议


作者:阿三
博客:Nockygo
公众号:阿三爱吃瓜

持续不断记录、整理、分享,让自己和他人一起成长!😊


前言

自从我使用obsidian之后,加上懒,其实越来越少发博客了。原因除了本身写的少之外,就是我的博客系统和知识管理系统分属两个库,由于知识管理笔记部分常用,导致博客每次都容易忘记去写,所以我干脆把博客的md文件也一并移植到知识管理系统这个库里了。

image.png

结合我自己的博客发布流程:

obsidian知识管理系统创建文章并写作
利用插件shell command使用快捷键Ctrl+P键同步博客系统的文章同时上传github库,同时也上传到自己的服务器上
vercel和cloudflare自动拉取github仓库
访问https://blog.asan123.top (国外)和https://hexo.hexiefamily.xin (国内)可以访问的到
同时博客小程序也可以访问的到
微信公众号文章也可以一键发布

整体的过程就变得非常简单化,写完我就只需要一个快捷键Ctrl+P就可以搞定了。

使用到的 obsidian 插件

一、image auto upload plugin

用于自动上传图片到图床。需要配合 picgo 使用。

二、templater 插件

用于快速生成模版中的yaml的metadata,如title直接是<% tp.file.title%> ,日期是 <% tp.date.now("YYYY-MM-DD HH:MM") %>

三、quickadd

用于快速创建一篇新博客,下面是我的设置:

1.创建一个 Template类型的quickadd 命令

image.png

2.在根目录新建一个 _Templates 文件夹,并创建模板文件 vercel博客模板

1
2
3
4
5
6
7
8
9
10
11
12
13
14
---
title: <% tp.file.title %>
tags:
- Fleeting_N
- 博客,微信公众号
date: <% tp.date.now("YYYY-MM-DD HH:MM") %>
draft: true
hideInList:
isTop:
published:
categories:
- 博客
- 微信公众号
---

published 字段是发布,默认设置为false,草稿。等到文章写完并修改无误后,再修改为 true 进行发布。

3.设置quickadd 命令:

image.png

四、shell commands

这里我没有使用obsidian-git插件,因为要分好几步,太麻烦了,我本地写了一个shell的脚本,这个脚本作用是:

上传知识管理库到github上
上传博客库到github上 ——-> vercel 自动拉取
上传博客库到服务器上 ——-> 服务器自动解析

启用 Vercel

打开 Vercel 导航栏 创建项目 ,授权 Github 项目,选择博客所在仓库,选择正确的分支。

添加环境变量,指定高版本 HEXO_VERSION

然后部署即可。

部署完成后就可以使用 Vercel 的二级域名访问博客了。如果你像我一样有自己的独立域名,那么可以进行域名绑定。

Vercel 绑定独立域名

打开 Settings ,在右侧找到刚刚的博客站点,在设置或者部署中找到 【自定义域】,设置自定义域名,输入之前托管进来的域名,按照指引完成绑定。

image.png

以上,所有设置都已完成。

总结

现在我要发布一篇新博客时,只要在 obsidian 中打开 hugo博客的这个库,然后使用 quickadd 新建一篇博客,写上内容,然后把yaml 中的 published 字段值改为 true 即可✨一定要记得改,否则他就不发布了,(从草稿改为发布)。等待3分钟后 obsidian-git 插件自动同步到 github,博客就自动更新发布好了。

这篇文章就是使用新方式发布的,优雅不是一点点,那是相当的多,当然如果我想发布到公众号中,用obsidian-publish-wechat插件一键发布即可,简直是ns的节奏!!!

链接

Hugo With Obsidian
Hi , Cloudflare Pages
Hugo 博客写作最佳实践
如何将域名托管到cloudflare
hexo部署vercel
莉莉蒙的少数派链接