Каталог решений

Покупка продления купона

Продолжительность:
Общая сумма:
0 руб.
Ваш запрос успешно отправлен!

Я согласен с условиями активации продлений
Продлить
Продолжить покупки

Лайки для элементов информационных блоков

Модуль обеспечивает обработку "Лайков" проставляемых посетителями сайта для элементов информационных блоков.При первом клике по кнопке отмеченной для модуля происходит установка лайка, при повторном - отмена.Модуль на GitHubДля работы модуля необходимо:Модуль "Главный модуль" версии 21.600.000 или новееМодуль "Информационные блоки"PHP версии 7.4 или новееДля более ранних версий PHP и ядра модуль доступен на GitHub

Лайки для элементов информационных блоков

Лайки для элементов информационных блоков

Скриншоты
Описание

Технические данные

Опубликовано:
30.12.2016
Обновлено:
30.12.2021
Версия:
2.0.0
Установлено:
500 - 999 раз
Подходящие редакции:
«Первый сайт», «Старт», «Стандарт», «Малый бизнес», «Бизнес»
Адаптивность:
Нет
Поддержка Композита:
Да
Совместимо с Сайты24
Нет

Пользовательское соглашение

Описание

Модуль обеспечивает обработку "Лайков" проставляемых посетителями сайта для элементов информационных блоков.

При первом клике по кнопке отмеченной для модуля происходит установка лайка, при повторном - отмена.

Модуль на GitHub

Для работы модуля необходимо:
  • Модуль "Главный модуль" версии 21.600.000 или новее
  • Модуль "Информационные блоки"
  • PHP версии 7.4 или новее
Для более ранних версий PHP и ядра модуль доступен на GitHub
Отзывы (0)
Обсуждения (20)
1 - 5 из 20
Что нового
2.0.0 (30.12.2021) Рефакторинг модуля. Минимально необходимая версия PHP стала 7.4. Модуль для более ранних версий PHP доступен на GitHub Разработчикам: Перевод на использование контроллеров модуля. Старые методы в скрипте JavaScript и класс \Vasoft\Likeit\LikeTable объявлены Deprecated.
1.2.4 (04.12.2021) Небольшие правки
1.2.2 (24.12.2021) Исправлена ошибка деинсталлятора
1.2.1 (04.12.2021) Исправлена незначительная ошибка позвалявшая учет лишних лайков на проектах за прокси и CloudFlare
1.2.0 (10.06.2021) Добавлена обработка ситуации когда сервер находится за прокси и CloudFlare Исправлена ошибка подключения скрипта при кешировании
1.1.0 (24.07.2018) Добавлен компонент виджета лайков
1.0.2 (24.01.2017) Исправление в процедуре проверки повторного голосования
1.0.1 (31.12.2016) Небольшое исправление для системы локализации
Установка
После установки модуля из Маркетплейс
Подключите компонент:
$APPLICATION->IncludeComponent(
    "vasoft:likeit.button",
    ".default",
    array(
        "SHOW_COUNTER" => "Y", // отображать счетчик
        "ENABLE_ACTION" => "Y", // разрешить голосование
        "ID" => $arResult['ID'] // идентификатор элемента
    ),
    false
);

Либо выполнить следующее:
  • Указать элемент или элементы, которые будут содержать информацию о лайках. Для этого необходимо указать css-класс 'vs-likeit' и добавить атрибут 'dataid' со значением ИД элемента информационного блока
  • Для элементов, которые так же являются кнопками установки/отмены "лайка", указать css-класс vs-likeit-action
  • для отображения количества установленных "лайков" разместить внутри элемента с классом vs-likeit  элемент с классом vs-likeit-cnt
  • Подключить скрипт (c учетом кеширования)
Вне кешируемой области:
use Bitrix\Main\Page\Asset;
Asset::getInstance()->addJs('/bitrix/js/vasoft.likeit/likeit.js');
Внутри шаблонов компонентов:
$this->addExternalJS('/bitrix/js/vasoft.likeit/likeit.js');
Пример элементов:

<span class="vs-likeit" dataid="10"><span class="vs-likeit-cnt"></span></span>
<span class="vs-likeit vs-likeit-action"  dataid="10"><span class="vs-likeit-cnt"></span></span>
<span class="vs-likeit vs-likeit-action" dataid="10"></span>
Если соответствующий элемент информационного блока уже был "лайкнут" текущим пользователем - элементу HTML добавляется класс 'vs-likeit-active'.

Класс 'vs-likeit-action' указывается если необходимо обрабатывать клик.

Классы 'vs-likeit-active' и 'vs-likeit-cnt' можно переопределить зада значения JavaScript переменным
window.vas_likeit_classactive = 'my-acive';
window.vas_likeit_classcnt = 'my-cnt';

Так же получить статистику по лайкам в шаблонах  при помощи команды (где $arIDs - массив ИД элементов инфо-блока)
\Bitrix\Main\Loader::includeModule('vasoft.likeit');
$arIDs = [12334, 12334];
$stat = new \Vasoft\LikeIt\Services\Statistic(); 
// Без учета текущего пользователя и без кеширования
$arLikes = $stat->checkLike($arIDs);
// Без учета текущего пользователя и с кешированием
$arLikes = $stat->checkLikeCached($arIDs);
// С информацией о выборе текущего пользователя и без кеширования
$arLikes = $stat->checkLikeUser($arIDs);
// С информацией о выборе текущего пользователя и с кешированием
$arLikes = $stat->checkLikeUserCached($arIDs);


Поддержка

Другие решения разработчика

Решение добавлено в корзину

Перейдите в корзину и оформите заказ или продолжите покупки
Перейти в корзину
Продолжить покупки