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


Накопительные Скидки


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

#21 zabota-mama

zabota-mama

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

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

Отправлено 31 Август 2014 - 19:14

Просмотр сообщенияСake (02 Июль 2014 - 00:07) писал:

К сожалению, получить список скидок из настроек не получится. На странице корзины информация о скидке выводится с помощью кода

<!-- Скидки, действующие на заказ -->
		 {% FOR cart_discount %}
			 {% IF cart_discount.DISCOUNT_IS_ENABLED %}
			 <tr>
				 <td class="cell1">
				 <div class="orderIcon discount"></div>
				 </td>
				 <td class="cell2">
				 <span class="cartFormTbodyHeader">
					 {cart_discount.DISCOUNT_NAME}
				 </span>
				 </td>
				 <td class="cell3">
				 {% IF cart_discount.IS_PERCENT %}
				 {cart_discount.DISCOUNT_VALUE}%
				 {% ELSE %}
				 {cart_discount.DISCOUNT_VALUE | money_format}
				 {% ENDIF %}
				 </td>
				 <td class="cell4 num">
				 {cart_discount.END_PRICE | money_format}
				 </td>
				 <td class="cell5 num">
				 {cart_discount.END_PRICE | money_format}
				 </td>
				 <td class="cell6"></td>
			 </tr>
			 {% ENDIF %}
		 {% ENDFOR %}

если у вас данный код отсутствует в шаблоне "Корзина", то вы можете его вставить после кода товарных позиций

<!-- Позиции заказа -->
		 {% FOR cart_items %}
			 <tr>
			 <td class="cell1">
				 <a href="{cart_items.GOODS_URL}"><img class="goods-image-icon" src="{% IF cart_items.GOODS_IMAGE_EMPTY %}{ASSETS_IMAGES_PATH}no-photo-icon.png{% ELSE %}{cart_items.GOODS_IMAGE_ICON}{% ENDIF %}"></a>
			 </td>
			 <td class="cell2">
				 <a href="{cart_items.GOODS_URL}" class="cartFormTbodyHeader">
				 {cart_items.GOODS_NAME}
				 <!-- Если у товара есть отличительные свойства для модификации товара, допишем их к названию товара -->
				 {% IFNOT cart_items.DISTINCTIVE_PROPERTIES_EMPTY %}<span>({% FOR distinctive_properties %}{cart_items.distinctive_properties.NAME}: {cart_items.distinctive_properties.VALUE}{% IFNOT cart_items.distinctive_properties.last %}, {% ENDIF %}{% ENDFOR %})</span>{% ENDIF %}
				 </a>
				 <!-- Путь к категории, из которой заказали товара -->
				 <div class="cartFormTbodyNavigate">
				 <a href="http://{NET_DOMAIN}/">Главная</a>
					 {% FOR catalog_path %}
						 &raquo; <a href="{cart_items.catalog_path.URL}" >{cart_items.catalog_path.NAME}</a>
					 {% ENDFOR %}
				 </div>
			 </td>
			 <td class="cell3">
				 <input name="form[quantity][{cart_items.GOODS_MOD_ID}]" value="{cart_items.ORDER_LINE_QUANTITY}" /> {cart_items.GOODS_MOD_MEASURE_NAME}
			 </td>
			 <td class="cell4 num">
				 {cart_items.GOODS_MOD_PRICE_NOW | money_format}
			 </td>
			 <td class="cell5 num">
				 {cart_items.ORDER_LINE_PRICE_NOW | money_format}
			 </td>
			 <td class="cell6">
				 <a href="{cart_items.ORDER_LINE_DELETE_URL}"><img src="{ASSETS_IMAGES_PATH}cartDelete.png" /></a>
			 </td>
			 </tr>
		 {% ENDFOR %}

Отлично!

Только:
1. "Итого" не пересчитывается, т.е. сумма без скидки. См.принтскрин
2. На странице просмотра заказа суммы должны быть как в корзине

Прикрепленные изображения

  • 2014-08-31 20_12_44-Интернет магазин Заботливая мама.png
  • 2.png


#22 Сake

Сake

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

  • Модератоpы
  • 5 979 сообщений

Отправлено 02 Сентябрь 2014 - 00:19

1. Вам необходимо дополнительно в шаблоне "Корзина" - найти строку

{cart_sum.NOW | money_format}

и заменить её на

{cart_sum.NOW_WITH_DISCOUNT | money_format}

2. Попробуйте в шаблоне "Просмотр заказа" найти строку

{order_lines.LINE_SUM | number}

и заменить её на

{order_lines.LINE_SUM_NUMBER_FORMAT}


#23 zabota-mama

zabota-mama

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

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

Отправлено 02 Сентябрь 2014 - 11:26

п.1 Получилось.
п.2 Не до конца (см. картинку) - сумма заказа не изменилась, а д.б. 538.

И еще можно такие изменения (см. пункты в след картинку):

1. Значение "-36 руб." сдвинуть вправо, чтобы было в колонке "Общая сумма"
2. Добавить: Итого: сумма без скидки (зачеркнутая)
3. Добавить: Вы экономите: размер скидки
4. Как можно эту картинку заменить?


Заранее спасибо!

Прикрепленные изображения

  • 4.png
  • 3.PNG


#24 Сake

Сake

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

  • Модератоpы
  • 5 979 сообщений

Отправлено 03 Сентябрь 2014 - 04:09

Замените ваш код в шаблоне "Корзина"

{% FOR cart_discount %}
						  {% IF cart_discount.DISCOUNT_IS_ENABLED %}
							
							  <tr>
							 
								  <td class="cell1">
										 <p style="color:#167A17;font-size:16px"> <b> <div class="orderIcon discount"></div>
								  </td>
								  <td class="cell2">
										<span class="cartFormTbodyHeader">
								  
									
									   <p style="color:#167A17;font-size:16px"> <b> {cart_discount.DISCOUNT_NAME} </b> </p>
										</span>
								  </td>
								  <td class="cell3">
									   {% IF cart_discount.IS_PERCENT %}
									  <center> <p style="color:#167A17;font-size:18px"> <b> {cart_discount.DISCOUNT_VALUE}  % </b> </p> </center>
										{% ELSE %}
									  <center> <p style="color:#167A17;font-size:18px"> <b> {cart_discount.DISCOUNT_VALUE | money_format} </b> </p> </center>
										{% ENDIF %}
								  </td>
								  <td class="cell4 num">
									  <!--  <center> <p style="color:#167A17;font-size:16px"> <b>	- {cart_discount.END_PRICE | money_format} </b> </p> </center> -->
								  </td>
								  <center> <td class="cell5 num">
										  <p style="color:#167A17;font-size:16px"> <b>	- {cart_discount.END_PRICE | money_format} </b> </p>
								  </td> </center>
								  <td class="cell6"></td>
								</tr>
							   
						  {% ENDIF %}
						{% ENDFOR %}

на следующий

{% FOR cart_discount %}
						  {% IF cart_discount.DISCOUNT_IS_ENABLED %}
							
							  <tr>
							 
								  <td class="cell1">
										 <div class="orderIcon discount"></div>
								  </td>
								  <td class="cell2">
										<span class="cartFormTbodyHeader" style="color:#167A17;font-size:16px;font-weight:bold;">
										   {cart_discount.DISCOUNT_NAME}
										</span>
								  </td>
								  <td class="cell3" style="color:#167A17;font-size:18px;text-align:center;font-weight:bold;">
									   {% IF cart_discount.IS_PERCENT %}
									  {cart_discount.DISCOUNT_VALUE}  %
										{% ELSE %}
									  {cart_discount.DISCOUNT_VALUE | money_format}
										{% ENDIF %}
								  </td>
								  <td class="cell4 num" style="color:#167A17;font-size:18px;font-weight:bold;">
									  <!--  - {cart_discount.END_PRICE | money_format}  -->
								  </td>
								  <td class="cell5 num" style="color:#167A17;font-size:16px;font-weight:bold;">
										  - {cart_discount.END_PRICE | money_format}
								  </td>
								  <td class="cell6"></td>
								</tr>
							   
						  {% ENDIF %}
						{% ENDFOR %}

Для замены изображения вы можете использовать класс

.orderIcon.discount {
  background: url("{ASSETS_IMAGES_PATH}image.png") no-repeat;
}

где "image.png" это ваше изображение. Данный класс необходимо разместить в файле стилей main.css

#25 zabota-mama

zabota-mama

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

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

Отправлено 04 Сентябрь 2014 - 13:21

Спасибо, то что нужно.

Только можно ли отцентрировать по вертикали (см.картинку 1)

И остались вопросы с предыдущего сообщения:
1. Сумма заказа округляется в другую сторону, чем скидка. (См. карт 2)

См. карт 3:
2. Добавить: Итого: сумма без скидки (зачеркнутая)
3. Добавить: Вы экономите: размер скидки

Прикрепленные изображения

  • 9.png
  • 10.png
  • 3.PNG


#26 Сake

Сake

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

  • Модератоpы
  • 5 979 сообщений

Отправлено 05 Сентябрь 2014 - 00:59

Найдите в вашем файле стилей main.css

.cartFormTbody td.cell2 {
  vertical-align: top;
  width: 500px;
}

и замените на

.cartFormTbody td.cell2 {
  vertical-align: middle;
  width: 500px;
}

далее добавьте

.cartFormTfootSumTable .cell1.old,
.cartFormTfootSumTable .cell1.old + .cell2 {
  text-decoration: line-through;
}

далее в шаблоне "Корзина" найдите

<tr>
			  <td class="cell1">Итого:</td>
			  <td class="cell2">{% FOR cart_sum %}{cart_sum.NOW_WITH_DISCOUNT | money_format}<br />{% ENDFOR %}</td>
		  </tr>

и замените на

{% FOR cart_sum %}
			{% IF cart_sum.NOW > cart_sum.NOW_WITH_DISCOUNT %}
			  <tr>
				<td class="cell1 old">Итого:</td>
				<td class="cell2">{cart_sum.NOW | money_format}</td>
			  </tr>
			{% ENDIF %}
		  {% ENDFOR %}
		 
		  <tr>
			  <td class="cell1">Итого:</td>
			  <td class="cell2">{% FOR cart_sum %}{cart_sum.NOW_WITH_DISCOUNT | money_format}<br />{% ENDFOR %}</td>
		  </tr>
				 
		  {% FOR cart_discount %}
			{% IF cart_discount.DISCOUNT_IS_ENABLED %}
			  <tr>
				  <td class="cell1 saving">Вы экономите:</td>
				  <td class="cell2">{cart_discount.END_PRICE | money_format}</td>
			  </tr>
			{% ENDIF %}
		  {% ENDFOR %}

К сожалению, округление в меньшую сторону реализовать не получится. В данном случае можно только изменить точность отображения суммы (знаков после запятой). Параметры отображения цены (в том числе количество знаков после запятой/точки) вы можете настроить в разделе Настройки -> Валюта -> Формат отображения денег.

#27 zabota-mama

zabota-mama

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

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

Отправлено 08 Сентябрь 2014 - 11:43

Спасибо за проделанную работу, все получилось. Мне очень нравится

Цитата

К сожалению, округление в меньшую сторону реализовать не получится. В данном случае можно только изменить точность отображения суммы (знаков после запятой). Параметры отображения цены (в том числе количество знаков после запятой/точки) вы можете настроить в разделе Настройки -> Валюта -> Формат отображения денег.

Сделал, но эти дроби вылезли на витрине во всех карточках - не красиво.

Может есть еще варианты? А то получается либо некрасиво, либо красть у клиента 50 коп.

Прикрепленные изображения

  • 1.png


#28 Сake

Сake

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

  • Модератоpы
  • 5 979 сообщений

Отправлено 08 Сентябрь 2014 - 23:37

К сожалению, других вариантов решения данной проблемы нет. Единственное что еще можно попробовать сделать, так это убрать число знаков после запятой и в шаблоне "Просмотр заказа" заменить переменную

<td class="cell2">{ORDER_SUM | money}</td>

на

<td class="cell2">{ORDER_SUM} руб.</td>

тогда округление не должно применяться к сумме заказа.




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

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