Вопросы и ответы

Если Вы установили DEMO-версию модуля и демонстрационный режим истек, но Вы не успели попробовать модуль в работе, сообщите об этом нам, с указанием адреса сайта и владельца лицензии (как это указано в админке сайта на странице обновлений). В общем случае, для сброса демо-режима нужно выполнить следующие указания:

  1. создать рез. копию сайта, хотя бы базы данных,

  2. деинсталлировать модуль,

  3. стереть данный модуль с сайта (соотв. опция доступна в списке модулей),

  4. выполнить SQL-запрос (в админке на соотв. странице в разделе "Инструменты": Административный раздел - Настройки - Инструменты - SQL-запрос):

    DELETE FROM `b_option` WHERE `MODULE_ID`='webdebug.reviews';

  5. сообщить нам (см. выше) для удаления нами упоминаний об использовании демо на Вашем сайте,

  6. повторно установить модуль из Маркетплейс .

Установка и настройка

Размещать внутри кешируемых компонентов другие компоненты (в т.ч. и наш модуль отзывов) в общем случае нельзя, т.к. в этом случае он не исполняется, а только берется из кеша, а также подключаемые им скрипты и стили не подключаются.

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

Итак, карточка товара. Обычно это компонент bitrix:catalog.element. В большинстве случаев он подключается из файла element.php (это файл шаблона комплексного компонента bitrix:catalog). Случаи, когда отзывы можно установить прямо в element.php - редки, т.к. в этом случае отзывы будут после всей карточки товара.

Решение следующее: в шаблоне компонента bitrix:catalog.element (в нужном месте, где будут выводиться отзывы) вставляем такую конструкцию:
<?if(CModule::IncludeModule('webdebug.reviews')){WDR2_MarkArea('reviews_example');}?>
Это код, который, используя собственную реализацию технологии отложенных функций, размечает область для вывода в нее отзывов.

Далее, в файле element.php (в любом месте, но для удобства лучше в конце), или же в файле component_epilog.php (если нет - создать) шаблона компонента bitrix:catalog.element:
<?if(CModule::IncludeModule('webdebug.reviews')):?>
    <?WDR2_BeginArea('reviews_example');?>
    (здесь подключение модуля webdebug:reviews2.page)
    <?WDR2_EndArea('reviews_example');?>
<?endif?>
Все, теперь содержимое этого блока попадет в размеченную область. В качестве дополнительной информации: для перемещения контента в размеченную область не используется JavaScript, а используется буферизация вывода.






Параметры «Тип объекта» и «Объект» это параметры, которые помогают компонентам модуля найти нужный объект, для которого оставляется отзыв.

В случае, если отзывы сделаны для элементов инфоблока (товары, новости, статьи и др) - указание типа объекта как «элемент инфоблока» крайне желательно! Если не указывать тип, это приведет к тому, что ссылка на отзыв в e-mail уведомлении не будет работать - т.е. она будет неправильная, а также элементам инфоблока не будут записываться обновленные параметры отзывов (итоговый средний рейтинг и количество отзывов), также возможны другие ограничения, делающие работу модуля неполноценной.

В случае, если отзывы создаются для сайта в целом, или для какой-то конкретной страницы, тип объекта выбирать не нужно, а в параметр «Объект» нужно указать произвольное значение идентификатора данного типа отзывов. Например, «SHOP», или «otzyvy_o_magazine», и т.п.

Для организации отзывов о сайте или интернет-магазине в целом, создайте интерфейс для отзывов как обычно, с произвольным названием, например, «Отзывы о магазине».

В публичной части сайта для компонентов модуля необходимо указывать значение параметра «Объект» - это произвольное значение, но оно не должно меняться со временем! Например, укажите «OTZYVY_O_MAGAZINE», или «SHOP_REVIEWS». Тип объекта в данном случае выбирать не нужно!

Все, после такой настройки отзывы о магазине должны работать.

Несмотря на то, что jQuery в последние годы практически является стандартом на большинстве сайтов, очень часто возникают проблемы с подключением его на сайте.

Компонентам нашего модуля необходимо подключение двух скриптов: jQuery и плагин к нему для показа звездочек.

Скрипты можно подключить встроенной функцией модуля: <?CWD_Reviews2::InitJQuery();?>. При этом, функция принимает один параметр - подключать ли jQuery. Т,е. с помощью функции можно либо подключить оба скрипта, либо только плагин звездочек.

Для работы компонентов нашего модуля необходима версия jQuery не ниже 1.8, и сама библиотека подключается именно из ядра 1С-Битрикс, версия библиотеки на данный момент - 1.8.3. В случае, если на сайте уже установлена другая, более старая версия (напр., 1.7.1, или 1.6.2, или 1.4.2 и др) - нужно перевести сайт на более новую версию jQuery - обычно это происходит «безболезненно».

В любом случае, если звездочки «не работают», откройте консоль браузера (нажмите кнопки «F12» и выберите инструмент разработчика «Консоль») и смотрите, какие там ошибки. Основные ошибки это:

  • "JQuery is not defined" - эта ошибка говорит о том, что какой-то скрипт пытается использовать jQuery, хотя на момент выполнения этого скрипта jQuery еще не подключен. В контексте нашего модуля, это говорит о том, что плагин звездочек подключается, когда jQuery еще не подключен. Решение следующее: подключать jQuery до подключения плагина звездочек, например, можно выполнять <?if(CModule::IncludeModule('webdebug.reviews')){CWD_Reviews2::InitJQuery(true);}?> непосредственно до подключения наших компонентов.
  • "undefined is not a function" - эта ошибка говорит о том, что вызывается функция, которая на момент вызова еще не определена. Например, это может быть, если вызывается скрипт показа звездочек, но плагин не был подключен. В таком случае подключите плагин. Также достаточно распространена и другая причина: подключение jQuery более одного раза. Т.е. принцип такой: при первом подключении jQuery к нему правильно подключаются все плагины, затем подключается еще раз jQuery (возможно, даже, другая версия) - и в результате библиотека jQuery на сайте подключена, но без плагинов, из-за чего и будет выведена указанная ошибка. Решение достаточно сложное: выяснить, почему подключается две версии, и удалить лишние подключения.

С помощью данного кода можно подключить и jQuery и плагин звездочек:
if (CModule::IncludeModule('webdebug.reviews')) {CWD_Reviews2::InitJQuery(true);}

В случае, если подключение jQuery не нужно, код следующий:
if (CModule::IncludeModule('webdebug.reviews')) {CWD_Reviews2::InitJQuery(false);}

В компоненте webdebug:reviews2.page подключение скриптов делается автоматически в соответствии с настройками.

Данная возможность была добавлена в обновлении 2.0.19 модуля. Поэтому первым делом проверьте, какая версия модуля установлена у Вас. Если версия ниже - то нужно обновиться.
Далее, все что остается сделать - включить опцию «Разрешить голосования незарегистрированным пользователям» в настройках модуля.
После этого неавторизованные пользователи смогут голосовать (понравился отзыв? да/нет), причем пользователь с одного IP-адреса может голосовать только по одному разу за каждый отзыв. Для авторизованных пользователей IP-адрес не учитывается (хотя они тоже могут голосовать всего по одному разу за каждый отзыв).

Настройка нашего модуля отзывов относительно простая. Опишем кратко процесс настройки.

Сначала необходимо создать и настроить интерфейс отзывов (для каждого типа отзывов свой интерфейс). Интерфейс это то же самое, что и профиль настроек, т.е. это просто страница с настройками каждого типа отзывов. В интерфейсе задаются основные настройки отзывов, а также создаются поля для заполнения и рейтинги для голосования.

Второй шаг - это установка в публичной части сайта компонентов модуля для показа отзывов. Удобно воспользоваться компонентом webdebug:reviews2.page - это комплексный компонент, который содержит в себе компонента списка отзывов и компонент формы добавления отзывов. В настройках компонента необходимо указать созданный интерфейс и объект для отзывов. Правильное указание объекта особенно важно для нормальной работы всего функционала модуля. Общие правила такие: если отзывы настраиваются для элементов инфоблока (товары любого типа, статьи, новости и др) - то обязательно указывайте соответствующий тип объекта, и сам объект указывайте как ID элемента инфоблока. Во всех остальных случаях (напр., отзывы о магазине в целом, или отзывы о пользователях) - тип объекта указывать не нужно, но сам объект должен быть указан уникальным значением. Например, если это отзывы о магазине, то объект можете указать "SHOP", "MAGAZIN", "otzyvy_o_magazine", "nashi-otzyvy", или как-нибудь так; если это отзывы о пользователях, разделах инфоблока, самих инфоблоках и др - необходимо указывать уникальный префикс (напр., USER_ или U_, SECTION_ или S_, IBLOCK_ или B_ - сами обозначения не важны, главное - их уникальность - напр., U_32, S_1315, B_3). Остальные параметры менее важны.

Также во время настройки работы модуля в публичной части может возникнуть проблема со скриптами в публичной части. Вообще, модуль сделан так, что поддерживает условно принятые правила: т.е. если у Вас на сайте скрипт jQuery подключаются стандартным способом, то проблем не должно возникнуть, но так бывает очень редко. Чаще же скрипты вручную прописаны в шапке сайта. Это создает доп. проблемы. В настройках модуля webdebug:reviews2.page если спец. опция по подключению JS скриптов - установка правильного значения в большинстве случаев все-таки решает проблему, но если не получается заставить работать скрипты (т.е. если при нажатии на кнопку не раскрывается форма отзывов, или если показывается название рейтинга, но не показываются звездочки) - придется попробовать разные варианты подключения скриптов, вплоть до подключения их вручную в шаблонах компонентов.

В настройках компонента есть опция «Шаблон имени ответившего администратора» (USER_ANSWER_NAME) - она позволяет указать как имя/фамилию отвечающего администратора, так и просто любую надпись, например, «администрация сайта».

Администраторы видят в каждом отзыве зеленую или красную «лампочку» - это означает что отзыв либо подтвержден (зеленая), либо еще не подтвержден (красная). Это сделано для удобства управления отзывами прямо из публичной части без необходимости перехода в административную панель.

Вопросы по звездочкам (рейтингу)

Для обеспечения работоспособности зведочек необходимо, чтобы на странице был подключен jQuery, а затем плагин звездочек (jquery-raty-2.7.0.min.js), а не наоборот. При этом после подключения плагина звездочек не должно быть подключений других версий jQuery, что часто наблюдается.

В компоненте «Страница отзывов» имеется опция «Подключать JS-скрипты», где можно выбрать подключение только плагина звездочек (по умолчанию) либо плагина звездочек и jQuery.

Однако, стандартное подключение работает только в том случае, если на сайте jquery и другие скрипты подключены правильно. Часто бывают проблемы с этим, например: сначала подключается правильная jquery из ядра (jquery-1.8.3 или jquery-2.1.3), затем правильно подключается плагин звездочек (jquery-raty-2.7.0), а затем подключается вручную еще одна версия jquery - в таком случае, подключаемый плагин зведочек относится к первой подключенной библиотеке jquery, которая после подключения второй уже не будет работать.

Если не получается решить с помощью стандартной опции, отключите здесь подключение скриптов и подключайте их вручную в самом начале компонента webdebug:reviews2.page, например так:
<script type="text/javascript" src="/bitrix/js/webdebug.reviews/jquery-raty-2.7.0.min.js"></script>
или (если сайт сверстан на HTML5):
<script src="/bitrix/js/webdebug.reviews/jquery-raty-2.7.0.min.js"></script>

Для получения дополнительной информации загляните в консоль браузера (Ctrl-Shift-F12). Находящиеся там ошибки помогут в решении проблемы.

В нашем модуле, при сохранении нового отзыва для товара, ему добавляется свойство с указанием количества отзывов (WD_REVIEWS2_COUNT), и с указанием среднего рейтинга (WD_REVIEWS2_RATING). В случае, если для товаров какого-то инфоблока еще не было добавлено ни одного отзыва, данные свойства отсутствуют, и создаются с первым отзывом.

Таким образом, в карточке товара легко вывести средний рейтинг:

<?=$arResult['PROPERTIES']['WD_REVIEWS2_RATING']['VALUE'];?>

и количество отзывов:

<?=$arResult['PROPERTIES']['WD_REVIEWS2_COUNT']['VALUE'];?>

Имейте ввиду, что это работает исключительно в файле template.php шаблона компонента bitrix:catalog.element (или подобных), т.к. массив $arResult['PROPERTIES'] определен именно в нем. В файле element.php (шаблон комплексного компонента, откуда подключается вышеуказанный компонент) такого массива нет, поэтому там подключение будет другим, более сложным. Отсюда вывод: подключайте компонент прямо в шаблоне (template.php) карточки товара (bitrix:catalog.element).

Для того, чтобы вывести рейтинг звездочками, необходимо подключить соответствующий компонент:

<?$APPLICATION->IncludeComponent("webdebug:reviews2.stars", "", array(
		"VALUE" => IntVal($arResult["PROPERTIES"]["WD_REVIEWS2_RATING"]["VALUE"]),
		"INTERFACE_ID" => "1",
		"READ_ONLY" => "Y",
		"UNIQ_ID" => "element",
		"COMPONENT_TEMPLATE" => "stars",
		"INPUT_NAME" => "",
		"SCHEMA_ORG" => "N",
		"COUNT" => "5",
		"COMPOSITE_FRAME_MODE" => "A",
		"COMPOSITE_FRAME_TYPE" => "AUTO"
	),
	false,
	array("HIDE_ICONS"=>"Y")
);?>

где VALUE - это рейтинг, INTERFACE_ID - ID интерфейса (обязателен), READ_ONLY - опция, которая не позволяет изменять рейтинг при наведении мышки (т.к. в данном случае это не нужно).

По проблеме с JavaScript для компонента звездочек - это не проблема, это особенность. Данный компонент является больше служебным, и обычно применяется в шаблоне карточки товара, или в шаблоне списка отзывов, или в шаблоне формы отзывов. В любом из этих случаев компонент находится внутри кешируемого компонента, поэтому он никак не сможет самостоятельно подключать нужные скрипты. И поэтому подключение нужно делать самостоятельно, вне кешируемой области:

<?if(CModule::IncludeModule('webdebug.reviews')){CWD_Reviews2::InitJQuery(false);}?>
Но все же лучше подключать jQuery стандартным (с точки зрения Битрикса) образом:
CJSCore::Init('jquery');

Наш модуль отзывов, при использовании в качестве отзывов для элементов инфоблока, автоматически добавляет в инфоблок свойства, содержащие количество отзывов для данного элемента (WD_REVIEWS2_COUNT) и средний рейтинг по элементу (WD_REVIEWS2_RATING). Поэтому вывести эти значения можно, например, в карточке товара, как обычное свойство, например:
<?=$arResult['PROPERTIES']['WD_REVIEWS2_RATING']['VALUE'];?>
При этом важно, чтобы в настройках компонента тип объекта был указан как "элемент инфоблока".

Вопросы по отдельным типам полей

Предположим, есть необходимость создать новый тип поля - «телефон» с вводом телефона по маске (т.е. +7- ___ - ___ - __ - __). Реализовать можно на основе обычного типа поля «Текст». алгоритм примерно следующий:

  1. скопировать файл /bitrix/modules/webdebug.reviews/field_types/text.php в новый файл, при этом, новый файл можно оставить в той же папке (в таком случае обязательно указывайте имя файла с префиксом, чтобы последующие обновления не затерли Ваш файл, например, «mycompany_text.php» или «mycompany_phone.php»), или можете скопировать его в любое место сайта (обычно такие скрипты располагаются в папке /bitrix/php_interface/*** и подпапках), но в этом случае необходимо создавать обработчик "OnGetFieldTypes" для нашего модуля и в этом обработчике вручную подключать файл с помощью require_once(),
  2. в новом файле название класса поменять, например, на «CWD_Reviews_FieldTypes_MyCompanyPhone» (оно должно обязательно начинаться с «CWD_Reviews_FieldTypes_»),
  3. далее, осталось редактирование файла. В методе "ShowSettings" внесите изменения в форму отображения настроек ( показывается при создании нового поля), в методе "Show" - изменения в показ поля в форме добавления отзыва, в методе "GetDefaultValue" - для получения значения по умолчанию, в методе "CheckFieldError" - изменения по части проверки введенного значения, в методе "SaveValue" - изменения по части сохранения значения (напр., можно запрограммировать сохранение телефона только числом, или наоборот - со всеми знаками препинания), в методе "GetDisplayValue" - изменения, касающиеся вывода телефона в списке отзывов на сайте.
  4. основной функционал лежит на методе "Show", в нем необходимо подключить доп. jQuery-скрипт для реализации ввода телефона по маске, и подготовить соответствующий программный код.
  5. после этого будет доступно создание нового типа поля.

Высота визуального редактора определяется его содержимым. Поэтому, при пустом содержимом его высота минимальна. В настройках каждого свойства типа «TEXTAREA» есть опция «Начальная высота визуального редактора». Установите ее значение, например, в «100».

В настройках каждого поля типа «FILE» есть опция «Стилизация», эта опция не только придает стиль в стандартных шаблонах нашего компонента с формой добавления отзыва, но и создает возможность удобно стилизовать файловые поля «под себя»: модуль в таком случае создает необходимый html-каркас для управления стилизацией.

Нет, в модуле нет такой возможности. Можно создать несколько полей такого типа, если необходимо.

Email-уведомления

Уведомления включаются в настройках интерфейса (вкладка «Общие настройки», секция «Настройки e-mail уведомлений») для каждого интерфейса в отдельности. Всего модуль поддерживает 6 уведомлений по 4 типам:
  • уведомление о создании отзыва с включенной опцией модерации (пользователю и администратору),
  • уведомление о создании отзыва с выключенной опцией модерации (пользователю и администратору),
  • уведомление об ответе на отзыв (пользователю),
  • уведомление об успешной модерации отзыва (пользователю).
При этом четыре уведомления о добавлении отзыва настраиваются единой галочкой, т.е. пока нет возможности отправлять уведомления, например, только пользователю, пропуская отправку e-mail администратору.

Есть такая проблема. Обновление 2.0.14 решает проблему для новых установок. Если у Вас модуль был удален ранее, то необходимо вручную это исправить:
  1. Переходим в "Настройки" - "Настройки продукта" - "Почтовые события" - "Типы почтовых событий".
  2. Открываем тип события "WD_REVIEWS2_M_1" (ссылка на указанной надписи).
  3. На вкладке "Шаблоны" будет доступно два созданных модулем шаблона данного типа почтового события. Нажмите на числовом идентификаторе шаблона с названием "Добавлен новый отзыв на сайте #SERVER_NAME#". Откроется страница редактирования шаблона почтового события.
  4. В тексте сообщения нужно просто полность удалить одну строчку (в шаблоне по умолчанию строка имеет номер 20):
    <p style="margin-top:30px; margin-bottom: 28px; font-weight: bold; font-size: 17px;">Уважаемый #USER_NAME#,</p>
  5. Сохранить.

Дополнительные возможности

Для поддержки капчи, например, из модуля twim.recaptchafree, необходимо выполнить три шага:
  1. Обновить модуль до версии 2.0.39,
  2. В init.php добавить данный код:
    AddEventHandler('main','OnEndBufferContent','MarryTwimRecaptchafreeAndWebdebugReviews',1000);
    function MarryTwimRecaptchafreeAndWebdebugReviews(&$Content){
    	if(CModule::IncludeModule('twim.recaptchafree')) {
    		$arSettings = COption::GetOptionString('twim.recaptchafree', 'settings', false, SITE_ID);
    		$arSettings = unserialize($arSettings);
    		$Content = preg_replace('#<div class="field wdr2_captcha">(.*?)<td(.*?)>(.*?)<input(.*?)name="captcha_word"(.*?)>(.*?)</td>(.*?)</table>#is','<div class="field wdr2_captcha">$1<td style="display:none"$2>$3<input name="captcha_word" value="'.substr($arSettings["key"],0,5).'" style="display:none;">$6</td>$7</table>',$Content);
    		$Content = preg_replace('#<a href="javascript:wdr2_update_captcha_.*?">[\W\s]+</a>#is','',$Content);
    	}
    }
  3. Добавить обработчик JS-события:
    <script>
    BX.addCustomEvent(window, 'onWDReviewsCaptchaRefresh', function(FormName, FormIndex){
    	Recaptchafree.reset();
    });
    </script>
Ниже приведен пример добавления отзывов через API модуля:
if (CModule::IncludeModule('webdebug.reviews')) {
	define('WDR2_IMPORTING',true); // задает режим импорта, если не указать - при добавлении будет считаться что отзыв добавлен как обычно (отзыв будет привязан к текущему пользователю, на email будет отправлено уведомление)
	$arFields = array(
		'FIELDS' => array( // Массив полей и их значений из настроек интерфейса (обязательно)
			'NAME' => 'Иван Иванов',
			'EMAIL' => 'ivan@ivanov.ru',
			'REVIEW' => 'Это мой <b>отзыв</b>!',
		),
		'INTERFACE_ID' => '1', // ID интерфейса (обязательно)
		'TARGET' => 'TEST', // Объект отзыва, если отзыв для элемента инфоблока, то необходимо указывать E_123 где 123 это ID элемента. (обязательно)
		'MODERATED' => 'Y', // Флаг прохождения модерации, Y - отзыв прошел модерацию, N - отзыв не прошел модерацию (обязательно)
		'DATE_CREATED' => date(CDatabase::DateFormatToPHP(FORMAT_DATETIME)), // дата создания отзыва а формате даты/времени сайта (обязательно)
		'EXTERNAL_ID' => '000000', // идентификатор отзыва на стороннем сервисе (необязательно)
		'USER_ID' => '0', // ID пользователя (необязательно)
	);
	$obReviews = new CWD_Reviews2_Reviews;
	$intNewReviewID = $obReviews->Add($arFields);
	var_dump($intNewReviewID);

}
В случае успешного добавления метод Add() возвращает ID добавленного отзыва, в противном случае массив $obReviews->arLastErrors содержит массив ошибок, возникших при добавлении отзыва.

Для этого необходимо в отзыве отметить галочку "Поднято", а в настройках компонента с отзывами настроить сортировку ("Поле для первой сортировки") в значение "(другое)" и ниже указать "UP" (только без кавычек).

API

$intCount = CWD_Reviews2_Reviews::GetReviewsCount($ElementID, $InterfaceID, $Type='');

где

- $ElementID - числовой ID элемента, 

- $InterfaceID - числовой ID интерфейса,

- $Type - тип объекта (для элементов инфоблока нужно указать E_).


Не забудьте предварительно подключить модуль (например, CModule::IncludeModule).
$intRating = CWD_Reviews2_Reviews::GetReviewsCount($ElementID, $InterfaceID, $Type='');

- $ElementID - числовой ID элемента, 

- $InterfaceID - числовой ID интерфейса,

- $Type - тип объекта (для элементов инфоблока нужно указать E_).


При этом в подсчет идет только рейтинг, отмеченный (в настройках) галочкой «Влияет на общий рейтинг».

Не забудьте предварительно подключить модуль (например, CModule::IncludeModule).

Информация по версии 1.0 (устаревшая версия)

Для начала выясните, какой компонент используется для вывода товаров - простой или комплексный. Сразу определимся, что отзывы будут доступны на странице детального просмотра элемента инфоблока (т.е. товар, новость, статья, и др).

В случае использования простого компонента (напр., bitrix:news.detail, bitrix:catalog.element), на странице (той, на которой установлен простой компонент) разместите код двух компонентов: webdebug:reviews.list (это список уже написанных отзывов), и webdebug:reviews.add (это форма добавления отзывы). При необходимости (задачи могут быть разные) можно использовать компоненты отдельно друг от друга.

В случае использования комплексного компонента (напр., bitrix:news, bitrix:catalog) выясните, на какой странице подключается нужный простой компонент. Так, в случае использования bitrix:news нужный компонент (bitrix:news.detail) находится в файле detail.php, во втором случае нужный компонент (bitrix:catalog.element) находится в файле element.php. в этом же файле размещаем те же два компонента. И, опять же, в зависимости от Вашей задачи, эти компоненты могут использоваться отдельно друг от друга.

Код компонентов для размещения смотрите на на вкладке «Быстрый старт».

В данном случае проблема JavaScript. Возможно, на странице, перед подключением компонента формы добавления отзыва, происходит ошибка в скриптах. Это можно увидеть в консоли (во многих браузерах консоль открывается по нажатию клавиши F12, или Ctrl-Shift-J). В этом случае выход один: искать и исправлять ошибку.

Также проблема может быть в том, что не подключена JavaScript-библиотека jQuery, или, наоборот, подключена более чем один раз.

Эти названия можно указать в настройках модуля.

Если у Вас модуль не работает динамически, причин может быть несколько. Наиболее вероятной причиной является неправильное указание элемента для компонентов модуля. Наиболее универсально указывать ID элемента, хотя есть второй вариант - символьный код (в этом случае, у каждого товара должен быть уникальный символьный код).

Примеры указания ID при вызове компонентов модуля, если они помещены на страницу element.php комплексного компонента «Каталог» (bitrix:catalog):

	"IBLOCK_ID" => $arParams["IBLOCK_ID"], "ELEMENT_ID" => $arResult["VARIABLES"]["ELEMENT_ID"], "ELEMENT_CODE" => $arResult["VARIABLES"]["ELEMENT_CODE"],

Если компоненты вызываются из компонентов bitrix:catalog.element, bitrix:news.list:

	"IBLOCK_ID" => $arParams["IBLOCK_ID"], "ELEMENT_ID" => $arResult["ID"], "ELEMENT_CODE" => $arResult["CODE"],

Если компоненты вызываются со страницы detail.php комплексного компонента «Новость» (bitrix:news):

	"IBLOCK_ID" => $arParams["IBLOCK_ID"], "ELEMENT_ID" => $arResult["VARIABLES"]["ELEMENT_ID"], "ELEMENT_CODE" => $arResult["VARIABLES"]["ELEMENT_CODE"],

Обратите внимание, что при размещении формы размещения отзыва внутри компонента, работающего в режиме кеширования, форма будет работать некорректно. Для этих случаев можно использовать либо файл компонента component_epilog.php, либо отключать кеширование (в компонентах с выводом информации об одном товаре это не критично, хотя и не желательно).

Указанные кнопки специально не стилизованы, чтобы дать возможность Вам самим это сделать, т.к. текущее представление кнопок — наиболее универсальное, которое будет уместно в большинстве случаев. Указанные кнопки имеют заданные ID («webdebug-reviews-submit» и «webdebug-reviews-add-button»), благодаря чему легко можно настроить их под Ваш дизайн сайта. Если у Вас возникли сложности при самостоятельной стилизации кнопок, обращайтесь к нам по указанным контактным данным.

В новой версии модуля реализован импорт отзывов из старой версии в новую.

Для осуществления переноса отзывов из старой версии в новую, должен быть создан интерфейс для «новых» отзывов. Затем перейдите на административную страницу «старых отзывов». На ней добавлена зеленая кнопка «Переход на новую версию модуля», после нажатия которой открывается всплывающее окно со списком настроек импорта. Выберите интерфейс для загрузки, а также режим импорта: для большинства случаев подойдет вариант «Все отзывы сразу (если все отзывы однотипные)».

После этого нужно выбрать, какие поля из старых отзывов нужно загружать, и куда именно.

Когда все настроено, нажмите кнопку «Начать импорт», и ждите окончания загрузки.

Во время переноса отзывов, старые отзывы не удаляются! Они остаются в системе, для возможности просмотра в будущем.






По всем вопросам обращайтесь по нашим контактным данным:

Наверх