此工藝CMS 2.X插件不再支持,但功能齊全,您可能會在合適的情況下繼續使用它。該許可證還允許您出於遺產支持原因而根據需要進行更改。
該插件的Craft CMS 3.X版本可以在此處找到:Craft-Disqus,也可以通過Craft CP中的Craft Plugin Store安裝。
將DISQUS評論系統集成到CRAFT CMS網站中,包括單個登錄(SSO)和自定義登錄/註銷URL。
相關:工藝3.x的Disqus
安裝
disqus
目錄放入您的craft/plugins
目錄中git clone https://github.com/nystudio107/disqus.git
直接進入您的craft/plugins
夾。然後,您可以使用git pull
進行更新composer require nystudio107/disqus
disqus
,以查看它。 Github最近開始將郵政-master
名稱附加到zip文件下載的文件夾名稱。 首先,確保您已經設置了DISQU帳戶。
接下來,在Craft Admin CP中,轉到設置 - > Plugins-> disqus,然後輸入DISQUS網站的短名稱。這是DISQUS插件唯一需要的設置。
所有設置也可通過config.php
文件進行配置,這是一種存儲默認設置的多種環境友好方式。不要編輯此文件,而是將其複制為craft/config
作為disqus.php
,然後在此處進行更改。
DISQUS插件的真正有用性是它可以照顧與您的工藝網站(SSO)集成(SSO)。
在使用此信息之前,您需要按照集成單登錄網頁上所述設置DISQUS SSO API。
然後將API密鑰和API秘密粘貼到DISQUS插件設置中,然後打開LightSwitch上的“用戶單符號”。
如果您想使用它們,DISQUS插件還將照顧自定義的登錄/註銷網址。有關詳細信息,請參閱添加您自己的SSO登錄和註銷鏈接。
您只需要這就是要在Disqus UI本身中顯示一個自定義登錄按鈕。
url
應該是您登錄頁面的地址。該頁面將在新窗口中打開,並且在完成身份驗證後必須關閉自身。這就是我們知道何時完成並重新加載頁面的方式。
logout
應設置為http://example.com/actions/disqus/logoutRedirect
以擊中處理註銷和重定向的DISQUS控制器。
所有這些方法都完成了同樣的事情:
{# Output the Disqus embed code using the 'disqusEmbed' function #}
{{ disqusEmbed( DISQUS_IDENTIFIER, DISQUS_TITLE, DISQUS_URL, DISQUS_CATEGORY_ID, DISQUS_LANGUAGE) }}
{# Output the Disqus embed code using the 'disqusEmbed' filter #}
{{ DISQUS_IDENTIFIER | disqusEmbed(DISQUS_TITLE, DISQUS_URL, DISQUS_CATEGORY_ID, DISQUS_LANGUAGE) }}
{# Output the Disqus embed code using the 'disqusEmbed' variable #}
{{ craft.disqus.disqusEmbed( DISQUS_IDENTIFIER, DISQUS_TITLE, DISQUS_URL, DISQUS_CATEGORY_ID, DISQUS_LANGUAGE) }}
除了DISQUS_IDENTIFIER
之外,所有參數都是可選的。有關這些參數是什麼的更多信息,請參閱JavaScript配置變量
disqus忽略了任何空字符串的設置,例如: ''
您將使用的典型樹枝標籤看起來像這樣:
{{ disqusEmbed(entry.slug, entry.title, entry.url) }}
...這將導致每個人的評論。
在最基本的情況下,這將導致您的工藝模板的輸出,看起來像這樣:
<div id="disqus_thread"></div>
<script data-cfasync="false" type="text/javascript">
/**
* RECOMMENDED CONFIGURATION VARIABLES: EDIT AND UNCOMMENT THE SECTION BELOW TO INSERT DYNAMIC VALUES FROM YOUR PLATFORM OR CMS.
* LEARN WHY DEFINING THESE VARIABLES IS IMPORTANT: https://disqus.com/admin/universalcode/#configuration-variables
*/
if (typeof disqus_config !== 'undefined') {
var _old_disqus_config = disqus_config;
}
var disqus_config = function() {
if (typeof _old_disqus_config !== 'undefined') {
_old_disqus_config.apply(this);
}
this.page.url = 'DISQUS_URL';
this.page.identifier = 'DISQUS_IDENTIFIER';
this.page.title = 'DISQUS_TITLE';
this.page.category_id = 'DISQUS_CATEGORY_ID';
this.language = 'DISQUS_LANGUAGE';
};
(function() { // REQUIRED CONFIGURATION VARIABLE: EDIT THE SHORTNAME BELOW
var d = document, s = d.createElement('script');
s.src = '//DISQUS_SHORTNAME.disqus.com/embed.js'; // IMPORTANT: Replace EXAMPLE with your forum shortname!
s.setAttribute('data-timestamp', +new Date());
(d.head || d.body).appendChild(s);
})();
</script>
<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript" rel="nofollow">comments powered by Disqus.</a></noscript>
DISQUS_SHORTNAME
設置來自Admin CP或config.php
設置,其餘的DISQUS_*
設置將作為變量從disqusEmbed
TWIG濾鏡/函數中傳遞為變量。
如果您已打開“用戶單登錄”,它也將在上述標籤內輸出類似的內容:
this.page.remote_auth_s3 = "eyJpZCI6IjEiLCJ1c2VybmFtZSI6IkFkbWluIiwiZW1haWwiOiJhbmRyZXdAbWVnYWxvbWFuaWFjLmNvbSJ9 c0e4b8f2eca3c0e995cdd64ba2dedd720820ab5b 1431214361";
this.page.api_key = "GTX1r1JBbiJah3hzZkBO06hI71VxjyWxgdurckHYBWLiELkHDidVmnDkBW0XeROe";
假設您已經正確設置了Disqus SSO,則可以使用您的Craft網站憑據將手工藝用戶登錄到Disqus。
如果您已打開“使用自定義登錄/註銷URL”,它也將為您生成this.sso
設置,如下所述
默認情況下,Disqus將使用您在Disqus Admin > Setup > Appearance
中設置的語言,但是您也可以在多語言網站上使用它。
您可以提供給{{ disqusEmbed() }}
DISQUS_LANGUAGE
參數允許您控制DISQUS嵌入所顯示的語言。但是,所有語言的註釋仍然相同。
如果您希望將評論本身不同,則可以做類似的事情:
{{ disqusEmbed(entry.slug ~ "_" ~ entry.locale, entry.title, entry.url, '', entry.locale ) }}
這將導致每種語言不同的評論,並且嵌入的disqus將以與評論相同的語言顯示。
nystudio107帶給您