star 后使用,效果更佳~~
npm install hexo-seo-submit
yarn add hexo-seo-submit
pnpm add hexo-seo-submit
在 hexo/_config.yml
中配置 hexo-seo-submit
hexo-seo-submit:
sortBy: updated # created | updated, default created
count: 2 # set all engine count, default 10
fileRootPath: hexo-seo-submit # will generate in root/public/fileRootPath, default '', root/public/
CI:
enable: true
cron: 0 4 * * *
platform: github # github | coding, default gitHub
branch: main # actions trigger branch, default master
baidu:
enable: true # default false
path: baidu.txt # default google.txt
count: 1
token: you baidu token
google:
enable: true
path: google-url.txt # default google.txt
# find path in root
accountKeysJSonFile: google.json # path.join(process.cwd(), path)
count: 2
# maybe required
proxy: http://127.0.0.1:7890
bing:
enable: true
apiKey: your bing api key
sortBy: created # default created
path: bing.json
如果在 github actions
中运行,可如下简化
hexo-seo-submit:
CI:
enable: true
baidu:
enable: true
google:
enable: true
bing:
enable: true
注意!生成后的 actions
文件路径为:public/.github/workflows/hexo-seo-submit.yml
,由于点开头的文件或文件夹默认被 hexo-deployer-git
忽略,你需要在 _config.yml
的 deploy
中
deploy:
type: git
repo: https://github.com/<username>/<project>
ignore_hidden: false # 忽略隐藏文件及文件夹(目录)
配置环境变量,去除引号直接粘贴至 即可
Name | Value | 说明 |
---|---|---|
baidu_token | 百度的 token | |
bing_apikey | 必应的 apikey | |
google_private_key | -----BEGIN PRIVATE KEY-----\n.....\n-----END PRIVATE KEY-----\n | 谷歌的 private_key,注意:粘贴时请去除引号 |
google_client_email | 谷歌的 client_email |
hexo-seo-submit:
CI:
enable: true
platform: coding
baidu:
enable: true
google:
enable: true
bing:
enable: true
-
在项目 => 持续集成 => 构建计划
中创建构建计划
2. 创建完后点 去设置
在基础信息中,将 配置来源
选择为 使用代码库中的 Jenkinsfile
。节点配置池
需要选择可以连接 google 的节点,若无此需求可随意
3. 在 触发规则
中可配置触发条件,例如:main
分支提交时触发和定时触发等。注意点保存
需要注意的是在 coding
中 google_private_key
需要 引号
Name | Value | 说明 |
---|---|---|
baidu_token | 百度的 token | |
bing_apikey | 必应的 apikey | |
google_private_key | "-----BEGIN PRIVATE KEY-----\n.....\n-----END PRIVATE KEY-----\n" | 谷歌的 private_key,注意:粘贴时需要引号
|
google_client_email | 谷歌的 client_email |
hexo-seo-submit:
baidu:
enable: true
token: you baidu token
google:
enable: true
accountKeysJSonFile: google.json
proxy: http://127.0.0.1:7890
bing:
enable: true
apiKey: your bing api key
# 注意在此处配置
deploy:
- type: hexo-seo-submit
本地执行 hexo deploy
时,hexo-seo-submit
会将 public
中生成的 urls
提交至搜索引擎、
你需要将申请的 Baidu token、Bing apikey、Google json 填入。如果你的网络环境连接 google
较慢的话,可以尝试使用 proxy
字段,支持 https
。
最后需要在 deploy
中配置
参数 | 类型 | 描述 | 默认值 |
---|---|---|---|
hexo-seo-submit |
根配置项 | ||
sortBy |
string | 排序依据,created 或 updated ,优先使用引擎中的字段 |
created |
count |
integer | 生成 url 的数量,优先使用引擎中的字段 | 10 |
fileRootPath |
string | 生成文件的根路径,将生成在 root/public/fileRootPath 目录,如果你不想分散在 public 目录中,则可以使用该字段 |
'' ,即 root/public/
|
CI |
object | 持续集成配置 | |
CI.enable |
boolean | 是否启用持续集成 | false |
CI.cron |
string | CRON 表达式,指定任务调度时间,注意在 actions 中的时区,且仅在 platform 为 github 时有效 |
0 4 * * * |
CI.platform |
string |
github 或 coding
|
github |
CI.branch |
string | 触发操作的分支名称,仅在 github 时有效 |
master |
baidu |
object | 百度搜索引擎配置 | |
baidu.enable |
boolean | 是否启用百度搜索引擎 | false |
baidu.path |
string | 生成 urls 文件的路径 | baidu.txt |
baidu.count |
integer | 生成 urls 的数量 | |
baidu.sortBy |
string | 排序依据 | |
google |
object | 谷歌搜索引擎配置 | |
google.enable |
boolean | 是否启用谷歌搜索引擎 | true |
google.path |
string | google.txt |
|
google.accountKeysJSonFile |
string | 谷歌账户密钥文件路径,默认 root 目录寻找 | google.json |
google.count |
integer | ||
google.sortBy |
integer | ||
google.proxy |
string | https proxy,如果你是 clash 一般默认为 http://127.0.0.1:7890
|
|
bing |
object | 必应搜索引擎配置 | |
bing.enable |
boolean | 是否启用必应搜索引擎 | true |
bing.apiKey |
string | 必应搜索引擎的 API 密钥 | |
bing.sortBy |
string | ||
bing.path |
string | bing.json |
npx hexo-seo-submit -h
# or
npx hexo-seo-submit google -h
# baidu
$ npx hexo-seo-submit baidu -t <your baidu token> -s https://ksh7.com -f baidu.txt
# bing
# must .json file, Eg: { siteUrl: 'https://ksh7.com', urlList: ['xxx'] }
$ npx hexo-seo-submit bing -k <you bing api key> -f examples/files/bing.json
# google
# use Environment variables
$ export PRIVATE_KEY="-----BEGIN PRIVATE KEY-----\n..."
$ npx hexo-seo-submit google -f examples/files/baidu.txt -p http://127.0.0.1:7890 -mail <your client_email here> -key "$PRIVATE_KEY"
# use json file
$ npx hexo-seo-submit google -f examples/files/baidu.txt -p http://127.0.0.1:7890 -kf examples/files/google-keys.json
- 搜索引擎中的
path
更改时注意后缀应于默认值保持一致 -
google
连接缓慢?请使用proxy
字段 -
google push
失败?请注意google_private_key
的格式
百度站长平台 => 普通收录
=> 资源提交
中得到 token
,
http://data.zz.baidu.com/urls?site=https://ksh7.com&token=***********
效果查看,一般 T+1,或查看 actions 中的运行日志。
- 进入 Web Search Indexing API,选择
项目
并启用 API,没有可新建。
- 点击
管理
按钮,进入
凭据 菜单,选择创建凭据 => 服务账号
- 填写
服务账号ID
,服务名称
可选,随后直接点击完成
- 点击创建好的服务账号,点击
密钥
=>添加密钥
,选择创建新密钥
,选择JSON
格式,点击创建
,下载json
文件
内容如下,在 github secrets
中分别对应 google_private_key
、google_client_email
注意,在 github
中,复制 private_key
时不需要 引号
,在 coding
中复制需要 引号
{
"private_key": "-----BEGIN PRIVATE KEY-----\nxxxxxx\n-----END PRIVATE KEY-----\n",
"client_email": "googleindexing@elated-guild-298003.iam.gserviceaccount.com"
}
- 打开 Google Search Console,
设置 => 用户和权限 => 添加用户
,邮箱为上述json email
,权限请选择拥有者
- 打开 https://www.bing.com/webmasters/home,选择谷歌账号登录(可同步
Google Search Console
,无需再验证)
- 点击右上角的
设置 => API 访问 => 复制 API 密钥
即可
-
URL 提交
菜单中可验证