delphij's Chaos

选择chaos这个词是因为~~实在很难找到一个更合适的词来形容这儿了……

29 Dec 2022

作弊条:Dokuwiki 和 Remark42 的集成

我的 Wiki 之前使用的是 Disqus 的评论系统, 而 remark42 支持多个网站,因此这次顺手把评论系统也搬到了上面。

之前的集成使用的是 Dokuwiki的disqus插件,这个插件要求在每个页面中都添加一个字符串 ~~DISQUS~~。 然而仔细看了一下文档发现直接在conf/里增加一些代码片段即可, 完全没有任何修改模版的必要。

具体做法是(假定你使用的是 FreeBSD package 安装的 dokuwiki,位于 /usr/local/www/dokuwiki/conf):

  1. 创建一个 meta.html,其内容类似于:
    <script>
    var remark_config = {
    host: 'https://remark42.example.com',
    site_id: 'remark',
    }
    </script>
    <script>!function(e,n){for(var o=0;o<e.length;o++){var r=n.createElement("script"),c=".js",d=n.head||n.body;"noModule"in r?(r.type="module",c=".mjs"):r.async=!0,r.defer=!0,r.src=remark_config.host+"/web/"+e[o]+c,d.appendChild(r)}}(remark_config.components||["embed"],document);</script>
    
  2. 创建一个 pagefooter.html,其内容是:
    <div id="remark42"></div>
    

即可。