hexo+yilia進行SEO優化
介紹
SEO優化
推廣是一個煩人的事情,特別是對於我們搞技術的來說,可能就不擅長推廣,那麼怎麼才能讓別人知道我們呢,我們就要想辦法讓別人通過搜尋就可以搜尋到你部落格的內容,給我們帶來自然流量,這就需要seo優化,讓我們的站點變得對搜尋引擎友好。
SEO是由英文Search Engine Optimization縮寫而來, 中文意譯為“搜尋引擎優化”。SEO是指通過站內優化比如網站結構調整、網站內容建設、網站程式碼優化等以及站外優化。
百度收錄
參考:https://blog.csdn.net/linzhiqiang0316/article/details/89344595
百度官方介紹:https://ziyuan.baidu.com/college/articleinfo?id=1504
bug:提交推送連結後,百度好像有延遲,你不能立即看到提交資料的變化,我的是過幾天后才有資料的。
如何選擇連結提交方式 ?
- 手動提交:一次性提交連結給百度,可以使用此種方式。
- 自動提交(雖然這種方式各有千秋,但是百度推薦全用上,全面一點!):
2.1 主動推送(實時):最為快速的提交方式,推薦您將站點當天新產出連結立即通過此方式推送給百度,以保證新連結可以及時被百度收錄。
2.2 自動推送:最為便捷的提交方式,請將自動推送的JS程式碼部署在站點的每一個頁面原始碼中,部署程式碼的頁面在每次被瀏覽時,連結會被自動推送給百度。可以與主動推送配合使用。
2.3 sitemap:您可以定期將網站連結放到sitemap中,然後將sitemap提交給百度。百度會週期性的抓取檢查您提交的sitemap,對其中的連結進行處理,但收錄速度慢於主動推送。
設定推送
前提:註冊百度,新增站點、驗證站點。
注意:使用HTML進行驗證的話,要保證該檔案上傳到網站後是一模一樣的,即不然被渲染和壓縮,跳過渲染可以再HTML檔案前面加入下面的內容;跳過壓縮因外掛而異。跳過該HTML檔案。
---
layout: false
---
驗證成功就能在百度找到你的網站了,如site:www.yansheng.xyz
,不過百度好像沒有那麼快,可能需要一兩天。
主動推送
前提:獲得祕鑰
您得註冊百度站長工具,然後在(標題欄)網站支援->資料引入->連結提交
現在(2020-6-23)該網站好像改版了,你可以在資源提交->普通收錄裡找到你的密匙,如下圖。
新增外掛hexo-baidu-url-submit
該外掛github網址:https://github.com/huiwang/hexo-baidu-url-submit
首先,在Hexo根目錄下,安裝本外掛:
npm install hexo-baidu-url-submit --save
配置“百度主動推送”
然後,同樣在根目錄下,把以下內容配置到_config.yml
檔案中:
# 百度主動推送
baidu_url_submit:
count: 1 ## 提交最新的一個連結
host: www.hui-wang.info ## 在百度站長平臺中註冊的域名
token: your_token ## 請注意這是您的祕鑰, 所以請不要把部落格原始碼釋出在公眾倉庫裡!
path: baidu_urls.txt ## 文字文件的地址, 新連結會儲存在此文字文件裡
其次,記得檢視_config.yml
檔案中url的值, 必須包含是百度站長平臺註冊的域名(一般有www), 比如:
# URL
url: http://www.hui-wang.info
最後,加入新的deployer:
deploy:
- type: s3 ## 這是我原來的deployer
bucket: hui-wang.info
- type: baidu_url_submitter ## 這是新加的
注意:上面是官方的文件,而實際上應該要這樣,可參考我的:
deploy:
- type: git
repository:
github: https://github.com/yansheng836/yansheng836.github.io.git
coding: https://git.dev.tencent.com/yansheng836/yansheng836.coding.me.git
branch: master
# 釋出時,同時進行百度推送
- type: baidu_url_submitter
因為不是有兩個deploy,要放在一起。
如何進行推送
執行hexo deploy
的時候,新的連線就會被推送了。如下圖
檢視官網資訊(如下所示)我們可以知道這是推送成功了。
補充:官網資訊檢視方式 (標題欄)網站支援->資料引入->連結提交->自動提交->主動推送,在下面就有推送成功的資訊(如下)。
#成功返回示例:
{
"remain":4999998,
"success":2,
"not_same_site":[],
"not_valid":[]
}
重新生成後,我們可以發現在public\
目錄下生成有baidu_urls.txt
裡面的就是推送的連結。
自動推送
參考:https://purewhite.io/2017/04/29/hexo-baidu-url-submit/
https://github.com/JoeyBling/hexo-theme-yilia-plus/commit/c1215e132f6d5621c5fea83d3c4f7ccbcca074a3
1.在配置H:\Hexo\themes\yilia\_config.yml
中開啟功能:
# 開啟百度站長平臺自動推送(https://ziyuan.baidu.com/linksubmit/index)
# 頁面被訪問了,就會被推送過去。
baidu_push: true
2.新建H:\Hexo\themes\yilia\layout\_partial\baidu-push.ejs
:
<% if (theme.baidu_push){ %>
<!-- 開啟百度站長平臺自動推送https://ziyuan.baidu.com/linksubmit/index,
https://ziyuan.baidu.com/college/courseinfo?id=267&page=2#h2_article_title19-->
<script>
(function () {
var bp = document.createElement('script');
var curProtocol = window.location.protocol.split(':')[0];
if (curProtocol === 'https') {
bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
} else {
bp.src = 'http://push.zhanzhang.baidu.com/push.js';
}
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(bp, s);
})();
</script>
<% } %>
3.在H:\Hexo\themes\yilia\layout\_partial\head.ejs
的</head>
前引入指令碼:
<!--百度自動推送-->
<%- partial('baidu-push') %>
</head>
sitemap
參考部落格:https://purewhite.io/2017/04/29/hexo-baidu-url-submit/
我們使用 hexo generator-baidu-sitemap
這個外掛,github:https://github.com/coneycode/hexo-generator-baidu-sitemap
或者使用這個外掛:https://github.com/ludoviclefevre/hexo-generator-seo-friendly-sitemap:它將為頁面,帖子,類別,標籤和XSL樣式表生成單獨的站點地圖檔案。
安裝hexo generator-baidu-sitemap
外掛
#if your hexo version is 2.x.x, you should install as follow:
$ npm install [email protected] --save
#if version is 3.x.x, you should install as follow:
$ npm install hexo-generator-baidu-sitemap --save
然後在_config.yml
裡面配置一下:
baidusitemap:
path: baidusitemap.xml
hexo g
後,會在public\
目錄下生成站點檔案baidusitemap.xml
。
百度站長平臺設定
之後去百度站長平臺提交一下 sitemap 的路徑就好,一般都是 www.example.com/baidusitemap.xml
,一段時間後,去百度搜索相關資訊就會出現這些網頁。
效果
在站長平臺可以看到連結提交數量,如:
Google收錄
和百度類似。
新增網站、驗證
登入Google賬號,開啟搜尋控制檯:https://search.google.com/search-console,新增你的網站,需要驗證網站,它那裡會提供幾種驗證方式,我是用HTML,下載它的HTML檔案,將它新增到你的網站根目錄下,然後點選驗證。
注意:使用HTML進行驗證的話,要保證該檔案上傳到網站後是一模一樣的,即不然被渲染和壓縮,跳過渲染可以再HTML檔案前面加入下面的內容,跳過壓縮因外掛而異。
---
layout: false
---
驗證成功很快就能再Google找到你的網站了,如site:www.yansheng.xyz
。
安裝hexo-generator-sitemap
外掛
提交sitemap,上面使用的是百度特有的sitemap,Google識別不了,所以使用通用sitemap生成器hexo-generator-sitemap:https://github.com/hexojs/hexo-generator-sitemap
npm install hexo-generator-sitemap --save
配置_config.yml
sitemap:
path: sitemap.xml
重新生成,會在根目錄下生成sitemap.xml
檔案,釋出後,就可以在google控制檯提交這個sitemap了。
效果
補充
SEO只負責提交網站的索引量、訪問量,具體資料可以通過新增百度分析和google分析來參看。可參考:hexo+yilia新增百度統計和Google統計