Add valine comment system support (#446)

* feat: add valine support

* Adjust the comment config

* Adjust the comment config

* Make comment section backward compatible with old config

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

Co-authored-by: hossainemruz <hossainemruz@gmail.com>
This commit is contained in:
Emily 2021-10-28 23:11:25 +08:00 committed by GitHub
parent ff86f78b4d
commit 098179ec1f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 40 additions and 4 deletions

View file

@ -155,10 +155,24 @@
<hr />
{{ partial "navigators/next-prev-navigator.html" . }}
<hr />
<!-- Add Disqus forum -->
{{ if site.DisqusShortname }}
{{ partial "disqus.html" . }}
<!----- Add comment support ----->
{{ with site.Params.features.comment }}
{{ if .enable }}
<!-- Add Disqus forum -->
{{ if .disqus.shortName }}
{{ partial "disqus.html" . }}
<!-- Add valine -->
{{ else if .valine }}
{{ partial "valine.html" . }}
{{ end }}
{{ end }}
{{ end }}
<!-- Keep backward compatibility with old config.yaml -->
{{ if site.DisqusShortname }}
{{ partial "disqus.html" . }}
{{ end }}
</div>
</div>
</div>

View file

@ -1,3 +1,8 @@
{{ $disqusShortName := site.DisqusShortname }}
{{ if site.Params.features.disqus.shortName }}
{{ $disqusShortName = site.Params.features.disqus.shortName }}
{{ end }}
<div id="disqus_thread"></div>
<script type="text/javascript">
(function () {
@ -8,7 +13,7 @@
var dsq = document.createElement("script");
dsq.type = "text/javascript";
dsq.async = true;
var disqus_shortname = "{{ site.DisqusShortname }}";
var disqus_shortname = "{{ $disqusShortName }}";
dsq.src = "//" + disqus_shortname + ".disqus.com/embed.js";
(
document.getElementsByTagName("head")[0] ||

View file

@ -0,0 +1,17 @@
<!-- valine -->
<div id="vcomments"></div>
<script src="//cdn1.lncld.net/static/js/3.0.4/av-min.js"></script>
<script src="//unpkg.com/valine/dist/Valine.min.js"></script>
<script type="text/javascript">
new Valine({
el: "#vcomments",
appId: "{{ .valine.appId }}",
appKey: "{{ .valine.appKey }}",
avatar: "{{ .valine.avatar }}",
placeholder: "{{ .valine.placeholder }}",
visitor: "{{ .valine.visitor }}",
lang: "{{ .valine.lang }}",
recordIP: "{{ .valine.recordIP }}",
enableQQ: "{{ .valine.enableQQ }}",
});
</script>