FastComments.com

Add Comments to Moodle Sites

借助 FastComments 和一些编程知识,我们可以向任何 Moodle 站点的课程页面添加带 SSO 的实时评论功能!

示例
Moodle 示例

由于我们将使用 SSO,您的用户无需单独登录即可发表评论。他们将无缝使用他们的 Moodle 帐户。

如果您对下面的教程不熟悉或不放心,请联系支持团队,我们可能能够帮您设置。


步骤 1:获取服务器访问权限 Internal Link


首先,你需要获取对你的 Moodle 服务器的 SSH 访问权限。

一旦你拥有 SSH 访问权限并能够访问 shell,请继续第 2 步。


步骤 2:定位视图文件 Internal Link

接下来我们需要找到 view.php。它很可能位于类似于 /var/www/html/moodle/mod/book/view.php 的目录中。

一旦找到该文件,我们在继续之前先备份它:sudo cp /var/www/html/moodle/mod/book/view.php /var/www/html/moodle/mod/book/view.php.bak

如果在本教程过程中站点出现故障,我们可以通过以下命令恢复:sudo cp /var/www/html/moodle/mod/book/view.php.bak /var/www/html/moodle/mod/book/view.php

步骤 3:添加代码 Internal Link

接下来,打开 view.php 文件。你可以使用 nano 来完成此操作:

sudo nano /var/www/html/moodle/mod/book/view.php

使用方向键向下滚动到页面底部。查找类似如下的文本:

echo $OUTPUT->box_end();

现在我们来复制添加评论小部件的代码:

Moodle 评论代码
Copy Copy
1
2
3if ($id) {
4 $url_decoded = str_replace('&', '&', $PAGE->url);
5 $users_picture_obj = new user_picture($USER);
6 $users_picture_url = $users_picture_obj->get_url($PAGE);
7
8 $simple_sso_json = json_encode($USER && $USER->username !== 'guest' ? array(
9 "username" => $USER->firstname . $USER->lastname,
10 "email" => $USER->email,
11 "avatar" => $users_picture_url->out(false)
12 ) : array(
13 "loginURL" => '/login/index.php'
14 ));
15
16 echo "<script src=\"https://cdn-eu.fastcomments.com/js/embed-v2.min.js\"></script>
17 <div id=\"fastcomments-widget\"></div>
18 <script>
19 FastCommentsUI(document.getElementById('fastcomments-widget'), {
20 tenantId: 'demo',
21 simpleSSO: $simple_sso_json,
22 urlId: $id,
23 url: '$url_decoded'
24 });
25 </script>";
26}
27

使用方向键将光标定位到 "box_end" 行之前,然后粘贴。

你应该会看到类似如下内容:

示例
Moodle 示例

现在保存:

  1. ctrl+x
  2. y
  3. enter

完成!

会员站点成功 Internal Link


就是这样!现在你应该已经在你的 Moodle 站点上添加了实时评论功能。

如果你遇到了权限被拒绝的错误,或者想要自定义 FastComments,请继续阅读。


会员站点定制 Internal Link


FastComments 旨在进行自定义以匹配您的网站。

如果您想添加自定义样式或调整配置,请查看我们的自定义和配置文档以了解如何操作。


需要专用插件吗? Internal Link

如果您喜欢 FastComments 并希望看到一个专用的 Moodle 插件,请点击右下角的爱心按钮 这样我们就知道对专用插件有需求。

在那之前,我们会维护该文档。