一個Disqus標識符
是一個惟一的字符串,在Disqus系統中用於尋找該頁面的頻道(thread)
。通常使用 disqus_identifier JavaScript configuration variable 來傳遞(見下文)。javascript
當一個使用的Disqus的頁面被加載時,Disqus使用該標識符來辨別正確的評論頻道,而後加載該頻道。若是找不到正確的頻道,將會建立一個新頻道。Disqus標識符將頻道與頁面聯繫起來。php
Disqus標識符被用在Disqus內嵌代碼(embed code)
和評論計數代碼(the comment count code)
中。若是你在支持Disqus的平臺好比WordPress
和Blogger
中使用Disqus,該標識符在插件(plugins)
的內部使用。html
Disqus標識符與頻道ID
不同,頻道ID是Disqus內部使用的,由於並不是全部站點都設置了Disqus標識符。全部頻道都有頻道ID,但不是全部頻道都有Disqus標識符。java
配置變量做爲Disqus的行爲和設置參數來使用。它們在加載Disqus的頁面的HTML中被定義。
這些變量在加載了Disqus的每一個頁面中都必須存在,所以請在你用來渲染頁面的動態模板中包含它們。app
配置變量可被添加在embed.js
腳本以前的任何地方,它們使用<script/>
標籤包裹住。好比說:async
JavaScript
<script type="text/javascript"> /* * * 配置變量:此代碼僅做示例 * * */ var disqus_shortname = 'example'; // Required - Replace example with your forum shortname var disqus_identifier = 'a unique identifier for each page where Disqus is present'; var disqus_title = 'a unique title for each page where Disqus is present'; var disqus_url = 'a unique URL for each page where Disqus is present'; /* * * DON'T EDIT BELOW THIS LINE * * */ (function() { var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true; dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js'; (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq); })(); </script>
若是你使用了咱們的插件,最好把這段代碼放在你的header.php
模板(或其餘等效的模板)中,而不是編輯插件文件。ide
把你的論壇短名(shortname
)告訴Disqus,短名是你在Disqus註冊時對應網站的惟一標識符。若是未定義,Disqus不會加載。post
用法:使用字符串來指定你的論壇短名
示例:網站
JavaScriptvar disqus_shortname = 'example';
將如何辨識當前頁面告訴Disqus。當Disqus加載時,該標識符被用來尋找正確的頻道。若是disqus_identifier
未定義,將使用頁面的URL
。而要是改動了文章的路徑或者改變了域名,URL就顯得不可靠了,因此咱們推薦你使用本身標識頻道的方式。
注意,不要把多個標識符賦值到相同的頻道URL上,那樣會形成標識符衝突(Identifier Conflict
)。
插件,好比說WordPress下的,會自動以博客的文章id來定義此項。
用法:指定一個字符串或者整數做爲惟一標識符。能夠在服務器端被動態渲染。
好處:你將能夠引用同一個頻道,而無論它加載處的URL。
示例:
如下使用文章的路徑做爲標識符:
JavaScriptvar disqus_identifier = '/december-2010/the-best-day-of-my-life/';
如下使用一個惟一的id做爲標識符:
JavaScriptvar disqus_identifier = '2583573';
頗有可能你會須要動態渲染該值,如下就是一個使用PHP的示例:
JavaScriptvar disqus_identifier = '<? php echo $my_identifier; ?>';
告知Disqus當前頁的標題。這在第一次在Disqus建立頻道時使用。若是未定義,Disqus將使用該頁的<titile>
屬性。若是該屬性沒法使用,Disqus使用該頁的URL。
好處:
將頻道的標題設置成 http://example.com/helloworld.html 一類的可不太好!
告知Disqus當前頁的URL。若是未定義,Disqus使用window.location.href
的值。該URL在disqus_identifier
未定義時用來尋找或建立一個頻道。此外,當一個頻道被建立時該URL,總被保存,這樣Disqus才知道一個頻道屬於哪一個頁面。
當disqus_url缺乏時,使用window.location.href
,咱們強烈推薦定義該變量。若是一個用戶使用URL http://example.com/helloworld.html?123 訪問你的頁面,Disqus可能會加載一個與使用 http://example.com/helloworld.html 時徹底不一樣的頻道。
爲了確保老是加載正確的頻道,你應該在你的頁面中使用絕對路徑來定義:
JavaScriptvar disqus_url = 'http://example.com/helloworld.html';
告訴Disqus當前頁使用的分類(category
)。這在第一次在Disqus中建立頻道時使用。
分類主要用於咱們的API篩選結果;分類不用來審覈(比方說在審覈面板過濾評論)。能夠在Settings > advanced
頁面或者使用咱們的(分類)API來建立新分類。若是你使用一個在你的論壇設置中還未被建立的分類ID,你會收到一個400錯誤請求
。
JavaScript用法:指定一個分類ID(不是標題)。若是未定義,Disqus使用該論壇的默認的通用分類。
示例:
JavaScriptvar disqus_category_id = '123456'; // 使用ID爲'123456'的運動分類。
API用法:經過分類過濾結果。
示例:利用categories/listPosts
端點(endpoint
)(或分類參數
與posts/list
端點結合)來列出某一肯定分類的評論。
可使用評論計數在任何你想使用的元素上。只要你:
disqus-comment-count
類data-disqus-url
或data-disqus-identifier
屬性count.js
就能起做用。
下面兩種方法都行:
html<span class="disqus-comment-count" data-disqus-url="http://example.com/path-to-thread/"> <!-- Count will be inserted here --> </span>
或
html<span class="disqus-comment-count" data-disqus-identifier="your_disqus_identifier"> <!-- Count will be inserted here --> </span>