В WordPress/WooCommerce MarkerView подключается двумя частями: сниппет загружается на витрине один раз, а якорь выводится в карточке товара. Готового официального плагина MarkerView нет; правка PHP не должна быть первым выбором для владельца магазина без технического опыта.
Перед началом
- Обновите каталог в MarkerView и скопируйте код из Виджет → Конструктор → Подключение.
- Сделайте резервную копию сайта или работайте на тестовой копии.
- Выберите способ, который уже принят на сайте: существующий менеджер сниппетов/тегов либо дочерняя тема. Не устанавливайте новый плагин только ради одной вставки, если сайт уже умеет добавлять пользовательский HTML.
MarkerView Cloud — основной вариант и не требует вашего сервера. При self-hosted сначала выполните отдельную установку, обеспечьте HTTPS и копируйте код из админ-панели этого сервера.
Шаг 1. Загрузите сниппет
Самый безопасный для администратора путь — существующий инструмент вставки кода, который выводит HTML перед закрывающим </body> на публичных страницах. Вставьте туда весь актуальный сниппет MarkerView и включите его для витрины.
Для разработчика альтернативой служит хук wp_footer в functions.php дочерней темы или в собственном служебном плагине. Не редактируйте родительскую тему: обновление сотрёт изменения. Убедитесь, что тема вызывает wp_footer(); без этого код хука не появится в HTML.
Шаг 2. Добавьте якорь карточки
В теме или конструкторе шаблона Single Product добавьте в нужное место:
<div id="reviews-widget"></div>
Если Product JSON-LD темы содержит корректный SKU и URL текущего товара, MarkerView может определить артикул из него. Это зависит от темы и SEO-плагинов, поэтому проверьте минимум два товара.
Надёжный вариант для разработчика — вывести SKU WooCommerce текущего товара в атрибут:
<div id="reviews-widget" data-article="SKU_ТЕКУЩЕГО_ТОВАРА"></div>
Значение должно экранироваться средствами WordPress и формироваться для текущего товара. Конкретный WooCommerce-хук выбирайте по теме: классические шаблоны, блочные темы и конструкторы размещают карточку по-разному. Не копируйте файл шаблона целиком без необходимости: WooCommerce предупреждает, что переопределённые шаблоны приходится сверять после обновлений.
Для главной добавьте HTML-блок <div id="reviews-homepage"></div> в её шаблон. Сниппет повторно не нужен.
Если адреса товаров не начинаются с /products/ (стандартные WooCommerce permalink часто используют другой путь), разработчик должен задать реальный productPathPrefix в конфигурации скопированного сниппета. Сначала проверьте структуру постоянных ссылок магазина.
Проверка результата
Очистите кэш WordPress/CDN и откройте публичную карточку в приватном окне. В исходном HTML должны присутствовать один сниппет и один #reviews-widget; отзывы должны меняться вместе со SKU товара.
Частые ошибки
- После обновления темы код исчез: он был в родительской теме. Перенесите изменение в дочернюю.
- Якорь есть, отзывов нет: проверьте SKU товара и соответствующий артикул в каталоге MarkerView; не все темы публикуют SKU в JSON-LD.
- Виджет дублируется: код одновременно добавлен менеджером сниппетов и
wp_footer. - Карточка сломалась: восстановите шаблон из копии и поручите правку разработчику; синтаксическая ошибка PHP затрагивает весь сайт.