2

在我的网站上,相同的 Disqus 线程出现在所有页面上。

我努力了:

  var currentPageId = '/testo';

  window.disqus_shortname = 'strengthtracker';
  window.disqus_identifier = currentPageId;
  window.disqus_url = 'http://strengthtracker.apphb.com/' + currentPageId;

和:

  var currentPageId = '/testo';

  var disqus_shortname = 'strengthtracker';
  var disqus_identifier = currentPageId;
  var disqus_url = 'http://strengthtracker.apphb.com/' + currentPageId;

两者都产生相同的结果,即使 currentPageId 发生变化,相同的线程也会出现在各处。

我在这里做错了什么?

4

1 回答 1

6

因为一些标识符与同一个 URL 一起使用,所以它们被永久绑定在一起。'disqus_identifier' 和 'disqus_url' 在线程首次加载时设置,如果线程存在具有相同标识符和/或 URL,则稍后将被忽略。

采取这种情况:

线程 #1首次加载时:

disqus_url = "http://example.com"
disqus_identifier = "identifier_1"

结果:使用这些变量创建的新线程

线程 #2首次加载时:

disqus_url = "http://example.com"
disqus_identifier = "identifier_2"

结果:“identifier_2”附加到线程#1。从现在开始调用任一标识符将获取相同的线程,而不管 URL 是什么。


这通常发生在标识符或 URL 组件(例如“currentPageId”)未定义或只是空白时,因此最好在加载 Disqus 嵌入之前检查它。

于 2013-07-19T01:29:43.793 回答