關於gitment
gitment其實就是利用你的程式碼倉庫的Issues,來實現評論。每一篇文章對應該程式碼倉庫中的
一個Issues,Issues中的評論對應你的部落格每篇文章中的評論。如果你是用github的部落格的話
用起來將會十分的方便。
註冊github應用
首先需要在這注冊一個OAuth Application, 請戳此處。在註冊的過程中,你需要輸入以下的東西:
Application name 隨意就好
Homepage URL 你的部落格地址,例如https://detectivehlh.github.io/
Application description 隨意就好
Authorization callback URL 也是部落格地址,例如https://detectivehlh.github.io/
輸入完成之後,點選註冊就OK了。成功之後就會拿到Client ID和Client Secret,然後先進行一下步,暫時還不會用到這個。
修改主題配置檔案
下一步就是要修改你的部落格所使用的主題的配置檔案。定位到# Comments,新增如下程式碼。
gitment:
enable: true
mint: true
count: true
lazy: false
cleanly: false
language:
github_user: detectiveHLH
github_repo: detectiveHLH.github.io
client_id: xxx
client_secret: xxx
proxy_gateway:
redirect_protocol:
將上面程式碼的github_user和github_repo改成你自己的就可以了。
為gitment新增樣式和layout
開啟你所使用的主題的目錄。開啟layout/_partial/comments.ejs,在原檔案後加入如下程式碼。
<% if(theme.gitment.enable) { %>
<div id="gitment_title" class="gitment_title"></div>
<div id="container" style="display:none"></div>
<link rel="stylesheet" href="https://imsun.github.io/gitment/style/default.css">
<script src="https://imsun.github.io/gitment/dist/gitment.browser.js"></script>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script>
const myTheme = {
render(state, instance) {
const container = document.createElement(`div`);
container.lang = "en-US";
container.className = `gitment-container gitment-root-container`;
container.appendChild(instance.renderHeader(state, instance));
container.appendChild(instance.renderEditor(state, instance));
container.appendChild(instance.renderComments(state, instance));
container.appendChild(instance.renderFooter(state, instance));
return container;
}
}
function showGitment() {
$("#gitment_title").attr("style", "display:none");
$("#container").attr("style", "").addClass("gitment_container");
var gitment = new Gitment({
id: decodeURI(window.location.pathname),
theme: myTheme,
owner: `detectiveHLH`,
repo: `detectiveHLH.github.io`,
oauth: {
client_id: `xxx`,
client_secret: `xxx`
}
});
gitment.render(`container`);
}
showGitment();
</script>
<% } %>
將上面程式碼中的owner、repo、oauth中的資訊換成你自己的就可以了,client_id和client_secret
就是第一步申請github應用得到的。我查了網上很多教程,都是需要點選按鈕才能顯示評論,我
做了一點改動,引用之後可以直接的顯示評論。然後開啟source/css/_partial/_gitment.styl,如果沒有就新建檔案。新增如下程式碼。
.gitment_title:hover {
color: #fff;
background: #0a9caf;
background-image: initial;
background-position-x: initial;
background-position-y: initial;
background-size: initial;
background-repeat-x: initial;
background-repeat-y: initial;
background-attachment: initial;
background-origin: initial;
background-clip: initial;
background-color: rgb(10, 156, 175);
}
.gitment_title {
border: 1px solid #0a9caf;
border-top-color: rgb(10, 156, 175);
border-top-style: solid;
border-top-width: 1px;
border-right-color: rgb(10, 156, 175);
border-right-style: solid;
border-right-width: 1px;
border-bottom-color: rgb(10, 156, 175);
border-bottom-style: solid;
border-bottom-width: 1px;
border-left-color: rgb(10, 156, 175);
border-left-style: solid;
border-left-width: 1px;
border-image-source: initial;
border-image-slice: initial;
border-image-width: initial;
border-image-outset: initial;
border-image-repeat: initial;
border-radius: 4px;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
border-bottom-right-radius: 4px;
border-bottom-left-radius: 4px;
}
.gitment_title {
display: inline-block;
padding: 0 15px;
padding-top: 0px;
padding-right: 15px;
padding-bottom: 0px;
padding-left: 15px;
color: #0a9caf;
cursor: pointer;
font-size: 14px;
}
然後開啟source/css/style.styl,在原有檔案後面新增如下程式碼,引入gitment相關的樣式。
@import "partial/_gitment.styl"
結束
到此為止,更新你的部落格。就可以看到評論了。
個人部落格傳送門 detectiveHLH
github傳送門 detectiveHLH