samharrison/disqus-plugin

一个简单的插件,用于显示Disqus评论。

安装: 14

依赖: 0

建议: 0

安全性: 0

星标: 2

关注者: 3

分支: 0

开放问题: 0

类型:streams-addon

v1.0.1 2016-12-13 19:07 UTC

This package is not auto-updated.

Last update: 2024-09-28 19:58:20 UTC


README

此插件提供了一种简单的方法来在页面、帖子或几乎任何你想显示评论的地方显示Disqus评论。

安装

只需将插件的文件复制到 addons/{site-ref}/samharrison/disqus-plugin(或者如果你没有权限访问网站文件,请询问你的管理员)。

另外,你可以使用Composer

composer require samharrison/disqus-plugin

设置

首先,确保你已经注册了你的网站在Disqus上。查看他们的快速入门指南以获取更多信息。

在注册过程中,你将能够为你的网站指定一个“论坛简称”。在开始使用插件之前,你必须在设置模块的插件部分设置此简称。如果你没有设置简称,Disqus评论将不会加载。

使用方法

显示评论最简单的方法是添加

{{ disqus() }}

到一个模板(例如,你主题的布局文件,或者帖子/页面类型的布局字段)。Disqus将页面的唯一标识符视为页面URL,并将标题视为title属性中的内容。然而,建议你定义自己的唯一标识符,因为使用URL可能不可靠(例如,如果你更改域名或页面的别名)。你可以通过为插件提供一个参数来做到这一点。例如,如果你在一个帖子的模板上使用插件

{{ disqus(post.id) }}

或者,在一个页面的模板上

{{ disqus(page.id) }}

警告:帖子、页面(以及你希望在它们上显示评论的其他条目)可能具有相同的ID,因此如果你希望显示它们的所有评论,最好在标识符前加前缀;例如,{{ disqus('posts-'~post.id) }}。你还可以通过指定第二个参数作为标题来防止Disqus使用<title>属性

{{ disqus(
    post.id,
    post.title
}}

关于Disqus配置变量的更多信息,请参阅Disqus文档

仅输出JavaScript

要显示评论,需要在页面中显示评论的地方添加一个具有id="disqus_thread"<div>。上面的{{ disqus() }}插件会在模板的任何位置包含它。如果你只想输出JavaScript以便更好地控制<div id="disqus_thread">的显示位置和方式,你可以使用{{ disqus_script() }}插件。

例如,这可能在你想要添加自定义类到<div>或将其放置在不容易获取页面或帖子ID的模板中时很有用

<div id="disqus_thread" class="your-custom-class"></div>
{{ disqus_script() }}

disqus_script()支持与disqus()相同的选项。

用例:可禁用的帖子评论

此插件使得即使在没有访问网站主题文件的情况下,也能轻松地向帖子添加Disqus评论。以下是如何向帖子添加Disqus评论的示例,每个帖子都有一个选项,可以选择是否显示评论。

首先,按照上面安装插件,并确保你在设置模块中设置了论坛简称。现在,让我们通过转到帖子模块中的字段部分,添加一个新的字段并选择“布尔型”作为字段类型来创建一个布尔型(true/false)字段类型

add_field

您可以根据喜好命名字段(例如,“显示Disqus评论?”)并将别名设置为“enable_disqus”。现在,在“文章”模块的类型部分,通过选择您想要分配字段的页面类型(例如,“默认”)上的“分配”选项,然后将“分配字段”。通过您给的字段名称选择您刚刚创建的字段,并在字段分配表单中填写您想要的任何详细信息。

现在我们可以编辑页面类型的布局以显示Disqus评论:选择您刚刚分配新字段的页面类型的“编辑”按钮,并将以下代码添加到“文章布局”字段的底部

{% if post.enable_disqus %}
    {{ disqus(post.id) }}
{% endif %}

根据您网站的设置,文章布局现在可能看起来像这样

post_layout

当您创建新文章时,现在可以选择是否显示Disqus评论,如果您选择显示,评论将被嵌入到博客文章的底部

post