此工艺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带给您