2009年10月30日作成
Disqus解除
Disqusというサービスを一時的に使っていましたが、 好みのレイアウトにするのが意外と大変ということと、 ページの読み込みがもっさりするという理由で外しました。
とりあえず使い方のメモだけでも残しておきます。 HTMLには一切手を入れず、JavaScriptだけで 必要なタグを追加するようにしています。
以下jQueryに依存していますので、HTMLのヘッダで取り込んでおいて。
<script src="jquery.js"></script>
まず中心となる関数から。
function disqus(sname)
{
var name = encodeURIComponent(sname)
$('footer').after('<div id="disqus_thread"></div>')
var disqus = 'http://disqus.com/forums/'+name
var q = ''
$('a[href$=#disqus_thread]').each(function(i, a){
q += '&url'+i+'=' + encodeURIComponent(a.href)
})
var url = disqus + '/get_num_replies.js?' + q.substring(1)
$('head').append('<script src="'+url+'"></script>')
disqus_no_style = 1
$('head').append('<script src="'+disqus+'/embed.js'+'"></script>')
}
使うときは、少々手間ですが4行ほど書きます。
disqus_url = location.href
if(disqus_url.search(/\/$/) >= 0)
disqus_url += 'index.html'
disqus('shortname')
これは、Disqusは通常window.locationをキーとして扱いますが、 このときindex.htmlのあるなしで別のページとして扱われてしまいます。 それでは困りますので、調整しているわけですね。
細かいことを気にすれば、/path/#idstring等も考えられますが、 使っていませんでしたので気にしていません。