语雀同步到hexo

简介

你是否有过这样的烦恼,数据存到云上会有不安全,数据丢失的风险,或者是你有不同的数据需要存放到不同的地方,例如飞书作为读书笔记,语雀作为内容输出(因为语雀可以有免费的会员,飞书储存有限)。这些都导致数据在不同的地方,不是一个的输出。因此需要把数据进行备份到hexo。

这里使用的是elog软件进行同步,你需要进行配置好语雀的token还有github图床的token。具体教程如下

部署教程

参考官网的快速开始

https://elog.1874.cool/yuque/start

1
npm install @elog/cli -g

之后进行初始化

1
elog init

官网的示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
module.exports = {
write: {
platform: 'yuque',
yuque: {
token: process.env.YUQUE_TOKEN,
baseUrl: '',
login: process.env.YUQUE_LOGIN,
repo: process.env.YUQUE_REPO,
onlyPublic: false,
onlyPublished: true,
},
notion: {
token: process.env.NOTION_TOKEN,
databaseId: process.env.NOTION_DATABASE_ID,
filter: true, // {property: 'status', select: {equals: '已发布'}}
sorts: true, // [{timestamp: 'created_time', direction: 'descending'}],
catalog: false
},
},
deploy: {
platform: 'local',
local: {
outputDir: '',
filename: '',
format: '',
catalog: false,
formatExt: '',
},
confluence: {
user: process.env.CONFLUENCE_USER,
password: process.env.CONFLUENCE_PASSWORD,
baseUrl: process.env.CONFLUENCE_BASE_URL,
spaceKey: process.env.CONFLUENCE_SPACE_KEY,
rootPageId: process.env.CONFLUENCE_ROOT_PAGE_ID, // 可选
formatExt: '', // 可选
},
},
image: {
enable: false,
platform: 'local',
local: {
outputDir: '',
prefixKey: '',
},
oss: {
secretId: process.env.OSS_SECRET_ID,
secretKey: process.env.OSS_SECRET_KEY,
bucket: process.env.OSS_BUCKET,
region: process.env.OSS_REGION,
host: process.env.OSS_HOST,
prefixKey: '',
secretExt: '', // 可选
},
cos: {
secretId: process.env.COS_SECRET_ID,
secretKey: process.env.COS_SECRET_KEY,
bucket: process.env.COS_BUCKET,
region: process.env.COS_REGION,
host: process.env.COS_HOST,
prefixKey: '',
secretExt: '', // 可选
},
qiniu: {
secretId: process.env.QINIU_SECRET_ID,
secretKey: process.env.QINIU_SECRET_KEY,
bucket: process.env.QINIU_BUCKET,
region: process.env.QINIU_REGION,
host: process.env.QINIU_HOST,
prefixKey: '',
secretExt: '', // 可选
},
upyun: {
user: process.env.UPYUN_USER,
password: process.env.UPYUN_PASSWORD,
bucket: process.env.UPYUN_BUCKET,
host: process.env.UPYUN_HOST,
prefixKey: '',
secretExt: '', // 可选
},
github: {
user: process.env.GITHUB_USER,
token: process.env.GITHUB_TOKEN,
repo: process.env.GITHUB_REPO,
branch: '',
host: '',
prefixKey: '',
secretExt: '', // 可选
},
},
}

需要进行配置选择的是哪一个platform还有图床,

注意这是同步到本地,deploy需要选择本地

1
2
3
4
5
6
7
8
9
10
11
local: {
outputDir: './source/_posts',
filename: 'title',
format: 'markdown',
catalog: false,
frontMatter: {
enable: true,
include: ['categories', 'tags', 'title', 'date', 'updated', 'permalink', 'cover', 'description'],
timeFormat: true,
}
}

路径是md存放的位置

17280278196771728027818978.png

之后参考https://elog.1874.cool/yuque/gvnxobqogetukays#%E8%AF%AD%E9%9B%80

进行配置上面的环境变量。

图床也是,需要新建一个仓库还有一个token来实现

最后是部署同步,进行同步文章到本地

1
elog sync -e .elog.env

然后本地使用

1
hexo d -g

进行部署