Установка виджета на сайт
В коде только номер виджета. Вид, тему, цвета и фильтр отзывов вы меняете в конструкторе — на сайте виджет обновится сам, код переставлять не нужно. Попробовать конструктор без регистрации — на странице hvalyat.ru/widget.
Три способа встраивания
- Скрипт — для любого сайта. Две строки HTML, виджет подгружается после загрузки страницы и не влияет на её скорость. Стили сайта на него не действуют: виджет живёт в собственном изолированном контейнере (Shadow DOM) и выглядит одинаково на любой странице.
- Серверная вставка — если сайт умеет подставлять HTML на сервере. Единственный способ, при котором текст отзывов оказывается прямо в коде страницы — его видят и поисковики (см. «Показывать ли отзывы поисковикам»).
- iframe — если на сайте нельзя подключать сторонние скрипты. Поисковой пользы не даёт: содержимое фрейма странице не засчитывается.
Способ 1. Скрипт
Вставьте туда, где должен появиться виджет:
<div data-hvalyat="WIDGET_ID"></div>
<script src="https://hvalyat.ru/w/embed.js" async></script>
Виджетов на странице может быть несколько (например, отзывы в середине и
бейдж в подвале) — у каждого свой номер, скрипт подключается один раз.
В кодах, выданных до конструктора, встречаются атрибуты data-type,
data-theme, data-style — такие коды продолжают работать как раньше;
у виджетов из конструктора вид берётся из его настроек, атрибуты не нужны.
Подключайте скрипт только прямой ссылкой на hvalyat.ru: если плагин ускорения
(например, «хранить статику локально» в WordPress) скопирует файл к вам на сайт,
виджет перестанет находить наш сервер и молча не появится.
Tilda
Добавьте на страницу блок с произвольным HTML-кодом (в библиотеке блоков он в разделе «Другое»), вставьте в него обе строки и опубликуйте страницу.
WordPress
В редакторе страницы добавьте блок «HTML-код» и вставьте обе строки. Для сайдбара или подвала — виджет «Произвольный HTML» в разделе «Внешний вид → Виджеты».
1С-Битрикс
В визуальном редакторе страницы переключитесь в режим исходного кода и вставьте обе строки в нужное место. Если шаблон собран из компонентов — добавьте их в шаблон компонента там, где должен стоять виджет.
Свой сайт на HTML
Вставьте контейнер в нужное место разметки, а строку со скриптом — рядом или перед
закрывающим </body>.
Для подвала и шапки
В конструкторе выберите вид «Полоска» (рейтинг одной строкой) или «Бейдж» (маленький блок с рейтингом). Они занимают ровно столько места, сколько нужно, и не растягиваются на всю ширину. Там же — где стоит блок (слева, по центру, справа) и нужна ли кнопка «Оставить отзыв»; кнопка «Подвал» над предпросмотром показывает, как это будет выглядеть. Код — тот же, две строки.
Способ 2. Серверная вставка
Ваш сервер запрашивает готовый фрагмент и подставляет его в страницу до отдачи посетителю. Адрес фрагмента:
https://hvalyat.ru/w/WIDGET_ID/inline.html
Адрес может ответить переадресацией — HTTP-клиент должен её выполнять (в примерах ниже так и есть по умолчанию).
PHP (таймаут 3 секунды, при сбое — пустая строка, а не предупреждение в вёрстке):
<?php
$hv = @file_get_contents(
'https://hvalyat.ru/w/WIDGET_ID/inline.html',
false,
stream_context_create(['http' => ['timeout' => 3]])
);
echo $hv ?: '';
?>
Python:
import requests
try:
fragment = requests.get(
"https://hvalyat.ru/w/WIDGET_ID/inline.html", timeout=3
).text
except Exception:
fragment = ""
Фрагмент отдаётся с кэшем на 10 минут и заголовком ETag —
не запрашивайте его на каждый показ страницы, кэшируйте у себя хотя бы на те же
10 минут. Если наш сервер недоступен, показывайте страницу без виджета, а не ошибку —
примеры выше именно так и делают.
Способ 3. iframe
<iframe src="https://hvalyat.ru/w/WIDGET_ID"
style="width:100%;max-width:100%;height:640px;border:0;"
loading="lazy" title="Отзывы"></iframe>
Готовый код с подходящей высотой — в конструкторе, вкладка «iframe».
Показывать ли отзывы поисковикам
По умолчанию нет. Отзывы в виджете — копия отзывов с площадок, и поисковики могут
посчитать их заимствованным текстом, а это риск для позиций сайта. Поэтому скрипт и iframe
закрыты от индексации стандартными способами (robots.txt и noindex) — посетители
видят виджет как обычно. Если вы всё же хотите, чтобы отзывы индексировались, включите
в конструкторе галочку «Показывать отзывы поисковикам» — на свой риск. Серверная вставка
кладёт текст прямо в страницу, поэтому её поисковики видят в любом случае.
Микроразметка отзывов
Звёздную разметку schema.org (AggregateRating, Review) виджет
не добавляет. Google прямо запрещает размечать отзывы о компании, собранные с других площадок,
в том числе через встроенный виджет, и за это снимает звёзды со страниц сайта. Если на сайте
стоит старый код с
data-schema="1", его можно не менять — атрибут больше ничего не делает.
Не получается?
Напишите в Telegram — установим сами.