В сегодняшней статье я опишу, как вывести количество просмотров элемента инфоблока двумя способами:
- Добавить и вывести поле количество просмотров элемента на сайте CMS 1c-битрикс.
- Вывести средствами api битирикс сколько раз был просмотрен элемент.
1.Задача: добавить и вывести поле количество просмотров элемента на сайте CMS 1c-битрикс.
В стандартном функционале bitrix включена это возможность. Рассмотрим на примере комплексного каталога. В настройках компонента в визуальном редакторе отмечаем галочку – использовать счетчик просмотров.
Если посмотреть код вызова этого компонента, то найдем такую строчку:
"USE_ELEMENT_COUNTER" => "Y",
Вот она то и будет отвечать за то, что у нас происходит подсчет просмотров элементов.
2. Задача: вывести средствами api битирикс сколько раз был просмотрен элемент.
В API 1c-битрикс предусмотрены три поля связанные с нашим вопросом:
- show_counter – количество уникальных просмотров в одной сессии;
- show_counter_start — время первого показа элемента ;
- shows –количество показов, поделенное на продолжительность показа.
Поле show_counter учитывается функцией CIBlockElement::CounterInc.
Пример как вывести с помощью API 1с- битрикс количество просмотров элемента:
<? if(CModule::IncludeModule('iblock') { $arFilter = Array("IBLOCK_ID"=>3); $res = CIBlockElement::GetList(Array("SORT"=>"ASC"), $arFilter, false, false, Array("ID","NAME", "SHOW_COUNTER")); while($ar_fields = $res->GetNext()) { echo "У элемента ".$ar_fields[NAME]." ".$ar_fields[SHOW_COUNTER]." показов<br>";} } ?>
В результате работы функции CIBlockElement::GetList, мы получим все элементы из 3-его инфоблока отсортированные по возрастанию. В результирующем массиве элементы имеют только 3 свойства: «ID», «NAME», «SHOW_COUNTER». Если нам потребуются еще какие-то свойства, то добавим его в массив Array(«ID», «NAME», «SHOW_COUNTER»).
Начинающим программистам и уже имеющим опыт советую прочитать Битрикс обучение.
Оставить комментарий