Перейти к содержимому


Добавление страницы с Отзывами о магазине (Обновленная: с передачей отзывов в микроразметку )


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2

#1 metry

metry

    Активный участник

  • Модераторы
  • 815 сообщений

Отправлено 12 Май 2021 - 10:36

Для внесения изменений зайдите в раздел Товары-->Товары и создайте товар с названием "Отзывы о магазине":

отзывы.jpg

Далее зайдите в Редакторе шаблонов--> Товар и в самом начале вставьте вставьте строку:

{%IFNOT GOODS_NAME = Отзывы о магазине %}

далее в самый конец кода вставьте:

{%ELSE%} <div class="content"> <!-- Отзывы -->
<!-- Если не выключен модуль отзывов о товаре --> <div id="content_4" class="tab-content" itemscope itemtype="https://schema.org/LocalBusiness " >

<a href="{INDEX_PAGE_URL}" title="{SETTINGS_STORE_NAME}" itemprop="url"> <link itemprop="image" href="{ASSETS_IMAGES_PATH}logo.png" />
<meta itemprop="name" content="{SETTINGS_STORE_NAME}">
<span itemprop="address" itemscope itemtype="https://schema.org/PostalAddress"><meta itemprop="addressLocality" content="{SETTINGS_STORE_REGION}" /></span>
{% IF SETTINGS_STORE_PHONE_NUMBER1 %}<meta itemprop="telephone" content="{SETTINGS_STORE_PHONE_COUNTRY_CODE1}({SETTINGS_STORE_PHONE_CITY_CODE1}){SETTINGS_STORE_PHONE_NUMBER1}">{% ENDIF %}
{% IF SETTINGS_STORE_PHONE_NUMBER2 %}<meta itemprop="telephone" content="{SETTINGS_STORE_PHONE_COUNTRY_CODE2}({SETTINGS_STORE_PHONE_CITY_CODE2}){SETTINGS_STORE_PHONE_NUMBER2}">{% ENDIF %}
{% IF SETTINGS_STORE_PHONE_NUMBER3 %}<meta itemprop="telephone" content="{SETTINGS_STORE_PHONE_COUNTRY_CODE3}({SETTINGS_STORE_PHONE_CITY_CODE3}){SETTINGS_STORE_PHONE_NUMBER3}">{% ENDIF %}

</a>


<div id="goodsDataOpinionBlock" class="goodsDataOpinion">
	 <!-- Форма добавления нового отзыва о товаре -->
	 <form method="post" action="{CURRENT_URL}" class="goodsDataOpinionAddForm" enctype="multipart/form-data">
	 <div id="goodsDataOpinionAdd">
		 <input type="hidden" name="hash" value="{HASH}" />
		 <input type="hidden" name="form[{ANTISPAM_FORM_FIELD_NAME_GOODS_FROM}]" value="{GOODS_FROM}" />
		 <input type="hidden" name="form[{ANTISPAM_FORM_FIELD_NAME_GOODS_ID}]" value="{GOODS_ID}" />
		 <!-- Набор полей которые не видит пользователь, но видят боты. Когда они их заполняют мы точно знаем, что их прислал нам бот и мы не сохраняем подобный отзыв о товаре, а боту отправившему отзыв сообщаем, что отзыв добавлен успешно, но будет отображён здесь после прохождения модерации -->
		 {ANTISPAM_CODE}
		 <p class="title">Оставьте свой отзыв и оценку заполнив форму ниже:</p>
		 <div class="goodsDataOpinionAddTable">
		 {% IFNOT CLIENT_IS_LOGIN %}
		 <div class="goodsDataOpinionMessage">
			 <p>Ваши знания будут оценены посетителями сайта, если Вы <a href="{USER_LOGIN_URL}" class="link-more">авторизуетесь</a> перед написанием отзыва.</p>
		 </div>
		 {% ENDIF %}
		 <!-- Форма добавления отзыва о товаре -->
		 <div class="goodsDataOpinionBlock goodsDataOpinionRatingBlock">
			 <label>Ваша оценка:</label>
			 <div class="goodsDataOpinionRating">
			 <input name="form[{ANTISPAM_FORM_FIELD_NAME_GOODS_OPINION_RATING}]" type="radio" value="2" {% IF FORM_GOODS_OPINION_RATING=2 %}checked="checked"{% ENDIF %} title="Ужасно" />
			 <input name="form[{ANTISPAM_FORM_FIELD_NAME_GOODS_OPINION_RATING}]" type="radio" value="4" {% IF FORM_GOODS_OPINION_RATING=4 %}checked="checked"{% ENDIF %} title="Плохо" />
			 <input name="form[{ANTISPAM_FORM_FIELD_NAME_GOODS_OPINION_RATING}]" type="radio" value="6" {% IF FORM_GOODS_OPINION_RATING=6 %}checked="checked"{% ENDIF %} title="Средне" />
			 <input name="form[{ANTISPAM_FORM_FIELD_NAME_GOODS_OPINION_RATING}]" type="radio" value="8" {% IF FORM_GOODS_OPINION_RATING=8 %}checked="checked"{% ENDIF %} title="Хорошо" />
			 <input name="form[{ANTISPAM_FORM_FIELD_NAME_GOODS_OPINION_RATING}]" type="radio" value="10" {% IF FORM_GOODS_OPINION_RATING=10 %}checked="checked"{% ENDIF %} title="Превосходно" />
			 </div>
			 <span class="goodsDataOpinionMsg"></span>
		 </div>
		 <div class="goodsDataOpinionBlock">
			 <label for="goods_opinion_name">Ваше имя:</label>
			 <input id="goods_opinion_name" type="text" name="form[{ANTISPAM_FORM_FIELD_NAME_GOODS_OPINION_NAME}]" value="{% IF CLIENT_IS_LOGIN %}{CLIENT_NAME}{% ELSE %}{FORM_GOODS_OPINION_NAME}{% ENDIF %}" maxlength="50" class="inputText" placeholder="Представьтесь, пожалуйста:" required />
		 </div>
		 <div class="goodsDataOpinionBlock" style="display: none;">
			 <label for="goods_opinion_title">Заголовок:</label>
			 <input type="text" id="goods_opinion_title" name="form[{ANTISPAM_FORM_FIELD_NAME_GOODS_OPINION_TITLE}]" value="{FORM_GOODS_OPINION_TITLE}" maxlength="255" class="inputText" />
		 </div>
		 <div class="goodsDataOpinionBlock">
			 <label for="goods_opinion_accomplishments">Достоинства:</label>
			 <textarea id="goods_opinion_accomplishments" name="form[{ANTISPAM_FORM_FIELD_NAME_GOODS_OPINION_ACCOMPLISHMENTS}]" cols="100" rows="3" class="textarea">{FORM_GOODS_OPINION_ACCOMPLISHMENTS}</textarea>
		 </div>
		 <div class="goodsDataOpinionBlock">
			 <label for="goods_opinion_limitations">Недостатки:</label>
			 <textarea id="goods_opinion_limitations" name="form[{ANTISPAM_FORM_FIELD_NAME_GOODS_OPINION_LIMITATIONS}]" cols="100" rows="3" class="textarea">{FORM_GOODS_OPINION_LIMITATIONS}</textarea>
		 </div>
		 <div class="goodsDataOpinionBlock">
			 <label for="goods_opinion_comment">Комментарий:</label>
			 <textarea id="goods_opinion_comment" name="form[{ANTISPAM_FORM_FIELD_NAME_GOODS_OPINION_COMMENT}]" cols="100" rows="8" class="textarea" required>{FORM_GOODS_OPINION_COMMENT}</textarea>
		 </div>
		 <div class="goodsDataOpinionBlock" style="display: none;">
			 <label for="goods_opinion_generally_is_good1">В целом Ваш отзыв:</label>
			 <div class="generally">
			 <input id="goods_opinion_generally_is_good1" name="form[{ANTISPAM_FORM_FIELD_NAME_GOODS_OPINION_GENERALLY_IS_GOOD}]" type="radio" value="1" {% IF FORM_GOODS_OPINION_GENERALLY_IS_GOOD=1 %}checked="checked"{% ENDIF %} /> <label for="goods_opinion_generally_is_good1">Положительный</label>
			 <br/>
			 <input id="goods_opinion_generally_is_good0" name="form[{ANTISPAM_FORM_FIELD_NAME_GOODS_OPINION_GENERALLY_IS_GOOD}]" type="radio" value="0" {% IF FORM_GOODS_OPINION_GENERALLY_IS_GOOD=0 %}checked="checked"{% ENDIF %} /> <label for="goods_opinion_generally_is_good0">Отрицательный</label>
			 </div>
		 </div>
		 {% IF USE_CAPTCHA %}
		 <div class="goodsDataOpinionBlock">
			 <label for="opinion_captcha_string" title="Введите код с картинки">Введите код:</label>
			 <div class="goodsDataOpinionCaptcha">
			 <input type="text" id="opinion_captcha_string" name="form[{ANTISPAM_FORM_FIELD_NAME_CAPTCHA_STRING}]" autocomplete="off" class="captcha inputText required" value="{FORM_}" />
			 <img src="{CAPTCHA_URL}" class="goodsDataOpinionCaptchaImg" alt="Код" title="Проверочный код, который нужно ввести в соседнее поле" />
			 <i class="icon-loop goodsDataOpinionCaptchaRefresh"></i>
			 </div>
		 </div>
		 {% ENDIF %}
		 <!-- Кнопка отправки формы -->
		 <div class="buttons">
			 <button type="button" title="Добавить отзыв о &laquo;{GOODS_NAME}&raquo;" class="button button2" onclick="$('.goodsDataOpinionAddForm').submit()">Оставить отзыв</button>
		 </div>
		 </div>
	 </div>
	 </form>
	 <!-- Если по товару есть хотя бы один отзыв -->
	 {% IFNOT opinion_list_empty_without_filter %}
	 <div class="goodsDataOpinionBody">
	 <!-- Верхняя навигация (Фильтры и страницы) -->
	 <div class="goodsDataOpinionListNavigateTop tabs" style="display: none;">
		 <!-- Фильтры отзывов -->
		 <div class="tab allOpinions active"><a class="" title="Все отзывы"><span data-value="{GOODS_OPINION_RATING_CNT_ALL}">Все</span></a></div>
		 <div class="tab goodOpinions"><a class="" title="Положительные"><span data-value="{GOODS_OPINION_RATING_CNT_GOOD}">Положительные</span></a></div>
		 <div class="tab badOpinions"><a class="" title="Отрицательные"><span data-value="{GOODS_OPINION_RATING_CNT_BAD}">Отрицательные</span></a></div>
		 <div class="tab goodsDataOpinionShowAddForm"><a href="#goodsDataOpinionAdd" class="" title="Оставить отзыв"><span>Оставить отзыв</span></a></div>
	 </div>
	 <!-- END Верхняя навигация (Фильтры и страницы) -->
	 <!-- Если отзывов по товару не было с учетом фильтра по настроению отзыва -->
	 {% IFNOT opinion_list_empty %}
	 <!-- Список отзывов о товарах -->
	 <div class="goodsDataOpinionList" id="to_opinion" itemprop="review" itemscope itemtype="https://schema.org/Review">
		 {% FOR opinion_list %}
		 <div class="{% IF opinion_list.GENERALLY_IS_GOOD %}good{% ELSE %}bad{% ENDIF %} bord {%IF opinion_list.index > 4%}hidden-review{%ENDIF%}" data-rating='{opinion_list.RATING | divide("2")}' >
			 <div class="cell1">
			 <meta itemprop="name" content="{GOODS_NAME}">
			 <meta itemprop="itemreviewed" content="{GOODS_NAME}">
			 <div itemprop="author" class="goodsDataOpinionListClient {% IF opinion_list.CLIENT_ID %}auth{% ENDIF %}">{opinion_list.NAME}</div>
			 {% IF opinion_list.DATE %}
			 <div class="goodsDataOpinionListDate">
				 <meta itemprop="datePublished" content="{opinion_list.DATE | date("d.m.Y")}">
				 <span class="date">{opinion_list.DATE | date("d.m.Y")}</span>
			 </div>
			 {% ENDIF %}
			 {% IF opinion_list.RATING %}
			 <div class="rating-box" itemprop="reviewRating" itemscope itemtype="https://schema.org/Rating">
				 <meta itemprop="worstRating" content="1">
				 <meta itemprop="bestRating" content="10">
				 <meta itemprop="ratingValue" content="{opinion_list.RATING}">
				 <div class="rating" style="width:{opinion_list.RATING}0%" alt="{opinion_list.RATING}" title="Рейтинг товара"></div>
			 </div>
			 {% ENDIF %}
			 </div>
			 <div class="cell2">
			 {% IF opinion_list.TITLE %}<div class="goodsDataOpinionListTitle" style="display: none;"><strong><span itemprop="name">{opinion_list.TITLE}</span></strong></div>{% ENDIF %}
			 {% IF opinion_list.ACCOMPLISHMENTS %}<div class="goodsDataOpinionListDesc"><label>Достоинства:</label><i class="icon-add"></i><span itemprop="description">{opinion_list.ACCOMPLISHMENTS | nl2br}</span></div>{% ENDIF %}
			 {% IF opinion_list.LIMITATIONS %}<div class="goodsDataOpinionListDesc"><label>Недостатки:</label><i class="icon-remove"></i><span itemprop="description">{opinion_list.LIMITATIONS | nl2br}</span></div>{% ENDIF %}
			 {% IF opinion_list.COMMENT %}<div class="goodsDataOpinionListDesc"><label>Комментарий:</label><i class="icon-chat_bubble_outline"></i><span itemprop="reviewBody">{opinion_list.COMMENT | nl2br}</span></div>{% ENDIF %}
			 {% IF opinion_list.ANSWER %}<div class="goodsDataOpinionListTableAnswer"><i class="icon-chat_bubble_outline"></i><span>{opinion_list.ANSWER | nl2br}</span></div>{% ENDIF %}
			 </div>
			 {% IF opinion_list.DELETE_URL %}
			 <div class="buttons">
			 </div>
			 {% ENDIF %}
		 </div>
		 {% ENDFOR %}
	 </div>
	 <!-- END Список отзывов о товаре -->
	 <!-- Нижняя навигация (страницы) -->
	 {% IF opinion_show_pages %}
	 <div class="goodsDataOpinionListNavigateBottom">
		 <div class="pages">
		 <span class="label">Страницы:</span>
		 <ol>
		 {% FOR opinion_pages_list %}
			 {% IF opinion_pages_list.CURRENT %}
			 <li class="current"><span>{opinion_pages_list.PAGE}</span></li>
			 {% ELSE %}
			 <li><a href="{GOODS_OPINION_PAGINATE_URL}&page={opinion_pages_list.PAGE}#show_tab_4">{opinion_pages_list.PAGE}</a></li>
			 {% ENDIF %}
		 {% ENDFOR %}
		 </ol>
		 </div>
	 </div>
	 {% ENDIF %}
	 <!-- END Нижняя навигация (страницы) -->
	 {% ENDIF %}
	 </div>
	 {% ENDIF %}
	 <!-- END Если по товару есть хотя бы один отзыв -->
	 <!-- Дабы добавляющий увидел результат добавления изменим хэш -->
	 {% IF FORM_GOODS_ID %}<script type="text/javascript">document.location.hash="goodsDataOpinionAdd"</script>{% ENDIF %}
</div>
</div> <!-- /END Если не выключен модуль отзывов о товаре -->
</div>
</div>{%ENDIF%}

Теперь нам осталось добавить на сайте адрес на страницу с отзывами. Это можно сделать в разделе Сайт-> Меню. Добавить новый пункт меню.
При добавлении нового пункта Меню  в выпадающем списке выбираем "произвольный адрес" . Тут то и пригодится адрес к странице с недавно созданным товаром.

отзывы2.png

Теперь по нажатию на пункт меню должна открываться страница отзывов.

#2 penzatoys

penzatoys

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 290 сообщений

Отправлено 16 Май 2021 - 18:05

для других, ранее созданных страниц, как произвести обновление? шаблон город

#3 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 070 сообщений

Отправлено 18 Май 2021 - 08:08

Здравствуйте.

Напишите пожалуйста номер аккаунта и добавьте его в профиль форума.




Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных