Код виджета необходимо вставлять в HTML код страницы в то место где нужно вывести список комментариев.
Код виджета комментариев по умолчанию имеет следующий вид:
<div id="rcb-comments"></div> <script type="text/javascript"> RCB = window.RCB || []; RCB.push({widget:"Comments",id: 10}); (function() { var RCBS = document.createElement("script"); RCBS.type = "text/javascript"; RCBS.async = true; RCBS.src = "https://recobox.ru/widget/widget.js"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(RCBS, s.nextSibling); })(); </script>
где:
<div id="rcb-comments"></div>
HTML контейнер в котором будет инициализироваться виджет. Данный кусок кода не обязательно должен быть перед основным кодом, он может располагаться в любом месте на странице где нужно вывести комментарии. Атрибут id можно изменить на любой другой, но его нужно будет потом указать в настройках(см. ниже описание параметров).
RCB = window.RCB || [];
Создание переменной в который будет добавлена информация о виджете/виджетах.
RCB.push({widget:"Comments",id: 10});
В созданную ранее переменную добавлется информация о параметрах виджета.
В переменную можно добавлять сразу несколько виджетов:
RCB.push({widget:"Comments",id: 10}); RCB.push({widget:"Comments",id: 12, container: "other-comments"}); RCB.push({widget:"CommentsCount",id: 10});
Параметр | Тип | По умолчанию | Описание |
---|---|---|---|
widget | строка |
Comments CommentsCount |
Тип виджета. Comments - виджет комментариев CommentsCount - виджет количества комментариев |
id | число | null | Идентификатор виджета |
container | строка | rcb-comments | id селектор тега где будет инициализирован виджет комментариев |
lang | строка | null | Локализация виджета. По умолчанию язык берется из настроек виджета в админ. панели если не указан этот параметр. |
cname | строка | URL текщуй страницы | Текстовый индентификатор канала с комментариями, по умолчанию устанавливается текущей URL страницы. Если указана даная настройка то настройка виджета "Учитывать GET параметры в URL" будет проигнорирована. |
cname_without_params | boolean | false |
Удаляет из текущей URL страницы или из cname все параметры оставляя чистый url, не актуален если используется cid . По умолчанию система уже сама удаляет все параметры из названия канала, но в настройках виджета можно использовать настройку "Учитывать GET параметры в URL" и каналы будут создаваться с учетом GET параметров в URL строке. Данная настройка будет полезна когда на какой-то из страниц нужно отключить использование GET параметров.
|
cid | число | null |
Системный ID идентификатор канала, имеет больший приоритет над cname . ID можно увидеть в админ. панели на странице "Список каналов" в первой колонке.
|
channel_close | boolean | false | Закрывает возможность комментаривания на странице. |
order | строка | latest | Сортировка комментариев по умолчанию, возможны значения: latest - от последних к старым, old - от старых к последним, popular - сначала с положительным рейтингом, negative - сначала с негативным рейтингом. Если указан тип сортировки который отключен в настройках виджета, то используется сортировка latest. |
size | число | null | Кол-во комментариев на странице, масимум 100. |
depth | число | null | Устанавливает уровень вложенности комментариев. |
rating_off | boolean | false | Скрывает в виджете звездный рейтинг или кнопки нравится/не нравится. |
theme | строка | null | Цветовая цхема виджета. Можно настроить в админ. панели. |
messages | объект |
Объект с надписями используемые в виджете. Пример: RCB.push({ widget:"Comments", id: 10, messages: { close: 'Комментирование закрыто!!!', commenting: 'Комментировать', } })Чтобы посмотреть все возможные фразы виджета укажите вместо объекта функцию: RCB.push({ widget:"Comments", id: 10, messages: function(messages) { console.log(messages); } })Данный код выведет в консоле браузера все фразы. |
|
count_container | строка | null | id или css класс тега в которы будет помещено кол-во комментариев, можно настроить в админ. панели в настройках виджета. |
count_only_number | boolean | false |
Выводит только число кол-ва комментариев в указанном контейнере(count_container ) либо в контейнере указанном в админ. панели в настройках виджета.
|
sso | объект | null | Объект с настройками единой авторизации(Single sign-on). |
sso.auth | строка | null | MD5 хеш данных пользователя которе нужно передать в виджет для входа через механизм единой авторизации(Single sign-on). Инструкция |
sso.provider | объект | null | Набор данных для добавления собственной иконки авторизации. |
sso.provider.title | строка | null | Название способа авторизации при наведении на иконку. |
sso.provider.url | строка | null | URL с формой авторизации который будет открыт в popup. |
sso.provider.icon | строка | null | Cсылка на иконку, рекомендуется размеры 30*30. |
Название | Входные параметры | Описание |
---|---|---|
initWidget | Функция срабатывающая после инициализации виджета, без параметров. | |
loggedIn |
user
|
Успешный вход пользователя, только в браузере пользователя. Параметры: user - данные пользователя.
|
logout |
user
|
Выход пользователя, только в браузере пользователя. Параметры: user - данные пользователя.
|
subscribe |
user
|
Пользователь подписался на канал, только в браузере пользователя. Параметры: user - данные пользователя.
|
unSubscribe |
user
|
Пользователь отписался от канала, только в браузере пользователя. Параметры: user - данные пользователя.
|
addComment |
comment
|
Пользователь добавил комментарий, только в браузере пользователя. Не вызывается если комментарий попадает в спам или премодерацию. Параметры: comment - данные комментария.
|
deleteComment |
comment
|
Пользователь удалил комментарий, только в браузере пользователя. Параметры: comment - данные комментария.
|
editComment |
comment
|
Пользователь отредактировал комментарий, только в браузере пользователя. Параметры: comment - данные комментария.
|
loadNextComments |
comments
|
Подгрузка следующих комментариев, только в браузере пользователя. Параметры: comments - список комментариев.
|
voteComment |
comment
|
Голосование за комментарий, только в браузере пользователя. Параметры: comment - данные комментария.
|
voteChannel |
channel
|
Голосование за канал, только в браузере пользователя. Параметры: channel - данные канала.
|
streamAddComment |
comment
|
Сoбытие, когда был добавлен новый комментарий, срабатывает у всех пользователей с открытой страницей. Параметры: comment - данные комментария.
|
streamEditComment |
comment
|
Сoбытие, когда был отредактирован комментарий, срабатывает у всех пользователей с открытой страницей. Параметры: comment - данные комментария.
|
streamApprovedComment |
comment
|
Сoбытие, когда был подтвержден, администратором или модератором, комментарий, срабатывает у всех пользователей с открытой страницей. Параметры: comment - данные комментария.
|
streamStatusComment |
comment
|
Сoбытие, когда был изменен статус комментария. Для каждого комментария возникает отдельное событие. Срабатывает у всех пользователей с открытой страницей. Параметры: comment - данные комментария.
|
Пример вызова callback функции:
RCB.push({ widget:"Comments", id: 10, addComment: function(comment) { // выполняем действие }, loggedIn: function(user) { // выполняем действие } })
Пример:
<div id="rcb-comments"></div> <script type="text/javascript"> (function() { var RCBS = document.createElement("script"); RCBS.type = "text/javascript"; RCBS.async = true; RCBS.src = "https://recobox.ru/widget/widget.js"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(RCBS, s.nextSibling); })(); </script> <script type="text/javascript"> var recoboxAjaxComments = function() { RCB = window.RCB || []; RCB.push({widget:"Comments",id: 10}); Recobox.bootstrap(true); }; </script> <button onclick="recoboxAjaxComments()">Загрузить комментарии</button>