Разработка модуля отзывов и рейтингов 1С-Битрикс под ключ

Как разработать модуль отзывов и рейтингов в 1С-Битрикс? Мы часто сталкиваемся с ситуацией, когда клиенты пытаются собрать отзывы с помощью стандартных компонентов `bitrix:catalog.element.vote` и `bitrix:forum`. Результат плачевен: форум без модерации, рейтинг без верификации покупки, отсутствие
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Разработка модуля отзывов и рейтингов 1С-Битрикс под ключ
Средний
~1-2 недели

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1415
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    995
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    733
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    863
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    772
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1134

Как разработать модуль отзывов и рейтингов в 1С-Битрикс?

Мы часто сталкиваемся с ситуацией, когда клиенты пытаются собрать отзывы с помощью стандартных компонентов bitrix:catalog.element.vote и bitrix:forum. Результат плачевен: форум без модерации, рейтинг без верификации покупки, отсутствие структурированных данных для Schema.org. Полноценный модуль отзывов — это другая история: верифицированные отзывы, многокритериальный рейтинг, модерация, ответы продавца, агрегированные звёзды в микроразметке. Мы — команда с 7-летним опытом разработки на 1С-Битрикс — предлагаем реализацию такого модуля под ключ. Оцените проект и получите консультацию — просто свяжитесь с нами.

Почему стандартные решения не подходят?

В Битрикс есть компонент bitrix:catalog.element.vote для голосования. И bitrix:forum с привязкой к элементам — это то, из чего обычно собирают отзывы. У этих решений нет встроенной верификации оплаченных заказов, отсутствует модерация, нет многокритериальной оценки. Микроразметка не генерируется, что лишает вас SEO-преимущества в виде звёзд в выдаче. Наш модуль закрывает все эти пробелы.

Как работает верификация покупки?

Самое ценное в отзыве — пометка «проверенный покупатель». Проверяем по b_sale_order:

public function isVerifiedPurchase(int $userId, int $productId): bool { $order = \Bitrix\Sale\Internals\BasketTable::getList([ 'select' => ['ORDER_ID'], 'filter' => [ '=PRODUCT_ID' => $productId, '=ORDER.USER_ID' => $userId, '=ORDER.PAYED' => 'Y', '=ORDER.CANCELED' => 'N', ], 'limit' => 1, ])->fetch(); return (bool)$order; } 

При создании отзыва order_id можно передать явно — тогда проверка однозначная. Без order_id — проверяем по любому оплаченному заказу с этим товаром.

Модерация и защита от спама

Все отзывы создаются со статусом pending и попадают в очередь модерации. Возможны два режима:

  • Ручная модерация — модератор одобряет/отклоняет каждый отзыв.
  • Автоодобрение — отзывы верифицированных покупателей публикуются автоматически, остальные — в очередь.

Фильтр спама работает через простые эвристики: ссылки в теле отзыва, порог заглавных букв, дублирующиеся тексты, стоп-слова. Подозрительные отзывы получают статус spam.

class SpamDetector { public function check(string $text): SpamResult { if (preg_match('/https?:\/\//i', $text)) return SpamResult::spam('Ссылки запрещены'); if (similar_text($text, $this->getLastReview($text)) > 80) return SpamResult::spam('Дубликат'); foreach ($this->stopWords as $word) { if (mb_stripos($text, $word) !== false) return SpamResult::suspicious(); } return SpamResult::clean(); } } 

Многокритериальный рейтинг

Для товаров можно задать несколько критериев оценки (например: «Качество», «Соответствие описанию», «Скорость доставки»). Итоговый рейтинг — среднее по всем критериям:

SELECT entity_id, AVG(rr.value) AS avg_rating, COUNT(DISTINCT r.id) AS review_count FROM b_vendor_review r JOIN b_vendor_review_rating rr ON rr.review_id = r.id WHERE r.entity_type = 'product' AND r.status = 'approved' GROUP BY entity_id; 

Агрегированные данные кешируются тегом review_entity_{entity_id} и сбрасываются при одобрении нового отзыва.

Schema.org микроразметка

Для SEO-эффекта важно вывести агрегированный рейтинг в микроразметке. Согласно Wikipedia: Schema.org, для товара нужно указать AggregateRating:

<div itemscope itemtype="https://schema.org/Product"> <span itemprop="name">Название товара</span> <div itemprop="aggregateRating" itemscope itemtype="https://schema.org/AggregateRating"> <span itemprop="ratingValue">4.7</span> <span itemprop="reviewCount">143</span> </div> </div> 

Компонент vendor:reviews.aggregate генерирует этот блок на основе данных из кеша. Сайты с микроразметкой получают в 5 раз больше кликов по звёздам — проверено на практике. Вы получаете звёзды в выдаче.

Голосование за полезность

Пользователи могут отметить отзыв как «полезный» или «бесполезный». Механизм защиты от накрутки:

  • Один голос с одного IP в сутки.
  • Авторизованные пользователи — один голос на отзыв навсегда.
  • Рейтинг полезности влияет на порядок отображения отзывов.

Процесс разработки

  1. Аналитика и проектирование модели данных (ORM-таблицы).
  2. Разработка модуля: инфоблоки, критерии, верификация.
  3. Модерация, спам-фильтр, голосование.
  4. Интеграция с микроразметкой и компонентами сайта.
  5. Тестирование и деплой.

Сравнение стандартного подхода и нашего модуля

Характеристика Стандартный форум Наш модуль
Верификация покупки Нет По оплаченному заказу
Модерация Нет Ручная / автоодобрение
Многокритериальный рейтинг Нет Да (любые критерии)
Микроразметка Schema.org Нет AggregateRating, Product
Спам-фильтр Нет Эвристики, стоп-слова
Ответы продавца Через форум Встроенные

Сроки разработки

Этап Срок
ORM-таблицы, модель отзывов 1 день
Верификация покупки, интеграция с sale 1 день
Модерация, спам-фильтр 2 дня
Многокритериальный рейтинг, агрегация 1 день
Schema.org микроразметка 0.5 дня
Голосование за полезность 0.5 дня
Ответы продавца, уведомления 1 день
Компоненты для сайта 2 дня
Административный интерфейс + очередь модерации 1 день
Тестирование 1 день

Итого: 11 рабочих дней. Импорт отзывов из Яндекс.Маркета или других площадок — дополнительно 1–2 дня.

Что входит в работу

  • Модуль отзывов с ORM-таблицами, компонентами и админ-интерфейсом.
  • Настройка верификации покупки, модерации, спам-фильтра.
  • Многокритериальный рейтинг и Schema.org микроразметка.
  • Голосование за полезность и ответы продавца.
  • Документация и обучение сотрудников.
  • Поддержка после запуска.
Типичные ошибки при разработке модуля отзывов
  • Использование стандартного форума без доработок — нет модерации, спама.
  • Игнорирование микроразметки — пропадает SEO-эффект.
  • Отсутствие кэширования агрегированного рейтинга — нагрузка на базу.
  • Неправильная проверка верификации — можно накрутить отзывы.

Свяжитесь с нами, чтобы обсудить ваш проект и получить точную оценку. Мы работаем с Битрикс уже много лет и гарантируем качественный результат.