[v] Rails app 接 Disqus 並編輯 Recommended Configuration Variables

Rails 要接 Disqus 很簡單,因為它是透過內嵌一段 JS 碼,而不是直接做在 Rails 上:

以一般常見的 blog 系統為例,有 posts, comments:

  1. 在 Disqus 註冊一個 Disqus 帳號
  2. 從 Disqus 的 Admin Panel 那邊選 Installing
  3. 在 Installation 頁面,選 Universal Code.
  4. 在 app/views/posts 底下新增一個 _disqus.html.erb partial
  5. 把 Disqus 留言板的 universal code 貼到 disqus partial 中,並 render 在你的 app 中想產生留言板的地方。我只有 posts#show 的地方會在該 post 底下有留言版,所以在 posts/show.html.erb 的最下方 render disqus partial.
  6. 刷新網頁就會看到該 post 底下已經出現 disqus 留言板了。

但這樣不夠,Disqus 建議我們編輯 Recommended Configuration Variables 來讓 Disqus 認得出各則留言分別是在哪個網站的哪個頁面底下留的言,將來 Disqus 要傳 comments 過來才不會出錯。

首先,我們看這篇:
https://help.disqus.com/customer/en/portal/articles/2158629

細部設定則看這篇:
https://help.disqus.com/customer/en/portal/articles/472098-javascript-configuration-variables

以下是我的設定

_disqus.html.erb

......

var disqus_config = function () {
    this.page.url = "<%= url_for([@post, {only_path: false}]) %>";
    this.page.identifier = "<%= @post.id %>";
    this.page.title = "<%= @post.title %>";
};

......