samharrison / disqus-plugin
一个简单的插件,用于显示Disqus评论。
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)字段类型
您可以根据喜好命名字段(例如,“显示Disqus评论?”)并将别名设置为“enable_disqus”。现在,在“文章”模块的类型部分,通过选择您想要分配字段的页面类型(例如,“默认”)上的“分配”选项,然后将“分配字段”。通过您给的字段名称选择您刚刚创建的字段,并在字段分配表单中填写您想要的任何详细信息。
现在我们可以编辑页面类型的布局以显示Disqus评论:选择您刚刚分配新字段的页面类型的“编辑”按钮,并将以下代码添加到“文章布局”字段的底部
{% if post.enable_disqus %}
{{ disqus(post.id) }}
{% endif %}
根据您网站的设置,文章布局现在可能看起来像这样
当您创建新文章时,现在可以选择是否显示Disqus评论,如果您选择显示,评论将被嵌入到博客文章的底部