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


Добавление Нового Параметра Доступности Товара


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

#21 Vaccina

Vaccina

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

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

Отправлено 09 Октябрь 2013 - 04:38

В main.css в самом конце добавьте:
.available-true{

}
в нем уже пропишите необходимые стили для шрифта.

А в сравнении что вы хотите сделать? Опишите немного поподробней пожалуйста.

#22 velena168

velena168

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

  • Пользователи
  • PipPipPipPip
  • 1 643 сообщений
  • ГородСанкт- Петербург

Отправлено 09 Октябрь 2013 - 04:52

Просмотр сообщенияVaccina (09 Октябрь 2013 - 04:38) писал:

В main.css в самом конце добавьте:
.available-true{

}
в нем уже пропишите необходимые стили для шрифта.

А в сравнении что вы хотите сделать? Опишите немного поподробней пожалуйста.

Для товаров которые на заказ, ведь и в таблице сравнения должно быть прописано На заказ: 2-3 недели, а не Товар есть в наличии

Кусок кода Товар
<!-- Доступность товара -->
  <div rel="true" class="available-true" {% IF GOODS_MOD_REST_VALUE=0 %}style="display:none;"{% ENDIF %}>
{% IF GOODS_MOD_REST_VALUE=300 %}
<small>На заказ: 2-3 недели</small>
{% ELSE %}
<small>Товар есть в наличии</small>
<p>*Доставка<br>по Санкт-Петербургу: </span></br><span style="color: #02886e;"><span class="date"></span>
  </div>
<div rel="false" class="available-false" {% IF GOODS_MOD_REST_VALUE>0 %}style="display:none;"{% ENDIF %}>Товара нет в наличии</div>
  </div>
{% ENDIF %}

  </div>

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

  • Снимок.PNG
  • Снимок1.PNG


#23 Vaccina

Vaccina

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

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

Отправлено 09 Октябрь 2013 - 05:58

Для сравнения товара можно сделать следующее - в шаблоне "Сравнение товаров" найдите

{% FOR goods_mod_info %}
					  <!-- Ограничитель, чтоб не ехала верстка -->
					  {% IF goods_mod_info.index<4 %}
						<td class="borderAll">
						  {%IF goods_mod_info.REST_VALUE=0 %}Товара нет в наличии{% ELSE %}Товар есть в наличии{% ENDIF %}
						</td>
					  {% ENDIF %}
					{% ENDFOR %}

и замените на

{% FOR goods_mod_info %}
					  <!-- Ограничитель, чтоб не ехала верстка -->
					  {% IF goods_mod_info.index<4 %}
						<td class="borderAll">
						  {%IF goods_mod_info.REST_VALUE=300 %}На заказ: 2-3 недели{%ELSEIF goods_mod_info.REST_VALUE=0 %}Товара нет в наличии{% ELSE %}Товар есть в наличии{% ENDIF %}
						</td>
					  {% ENDIF %}
					{% ENDFOR %}


#24 velena168

velena168

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

  • Пользователи
  • PipPipPipPip
  • 1 643 сообщений
  • ГородСанкт- Петербург

Отправлено 09 Октябрь 2013 - 09:15

Просмотр сообщенияVaccina (09 Октябрь 2013 - 05:58) писал:

Спасибо, стало лучше, но строчка Товар есть в наличии не изменилась.

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

  • Снимок.PNG


#25 Vaccina

Vaccina

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

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

Отправлено 10 Октябрь 2013 - 01:38

По всей видимости отрабатывается другое условие. У вас в шаблоне "Сравнение товаров" есть еще 2 подобных условия - это строка

{%IF goods_mod_info.REST_VALUE=0 %}Товара нет в наличии{% ELSE %}Товар есть в наличии{% ENDIF %}

и блок

{% IF goods_mod_info.index<4 %}
		<td class="borderAll">
		  {%IF goods_mod_info.REST_VALUE=0 %}
			Товара нет в наличии
		  {% ENDIF %}
		 
		  {%IF goods_mod_info.REST_VALUE<=950 %}
			{%IF goods_mod_info.REST_VALUE>=900 %}
			  Товар в пути
			{% ENDIF %}
		  {% ENDIF %}
		 
		  {%IF goods_mod_info.REST_VALUE<=800 %}
			{%IF goods_mod_info.REST_VALUE>=300 %}
			  Товар под заказ
			{% ENDIF %}
		  {% ENDIF %}
		 
		  {%IF goods_mod_info.REST_VALUE<300 %}
			{%IF goods_mod_info.REST_VALUE>0 %}
			 Товар есть в наличии
 
			{% ENDIF %}
		  {% ENDIF %}
		</td>
	  {% ENDIF %}

Попробуйте первую строку заменить аналогично предыдущему изменению -

{%IF goods_mod_info.REST_VALUE=300 %}На заказ: 2-3 недели{%ELSEIF goods_mod_info.REST_VALUE=0 %}Товара нет в наличии{% ELSE %}Товар есть в наличии{% ENDIF %}

если не поможет, то заменить так же и блок

{% IF goods_mod_info.index<4 %}
		<td class="borderAll">
		  {%IF goods_mod_info.REST_VALUE=0 %}
			Товара нет в наличии
		  {% ENDIF %}
		 
		  {%IF goods_mod_info.REST_VALUE<=950 %}
			{%IF goods_mod_info.REST_VALUE>=900 %}
			  Товар в пути
			{% ENDIF %}
		  {% ENDIF %}
		 
		  {%IF goods_mod_info.REST_VALUE<=800 %}
			{%IF goods_mod_info.REST_VALUE>300 %}
			  Товар под заказ
			{% ENDIF %}
		  {% ENDIF %}
		 
		  {%IF goods_mod_info.REST_VALUE<300 %}
			{%IF goods_mod_info.REST_VALUE>0 %}
			 Товар есть в наличии
 
			{% ENDIF %}
		  {% ENDIF %}
   
	{%IF goods_mod_info.REST_VALUE=300 %}
			 На заказ: 2-3 недели
		  {% ENDIF %}
		</td>
	  {% ENDIF %}


#26 velena168

velena168

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

  • Пользователи
  • PipPipPipPip
  • 1 643 сообщений
  • ГородСанкт- Петербург

Отправлено 10 Октябрь 2013 - 11:27

Большое спасибо. Теперь все в порядке.

#27 velena168

velena168

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

  • Пользователи
  • PipPipPipPip
  • 1 643 сообщений
  • ГородСанкт- Петербург

Отправлено 25 Октябрь 2013 - 13:47

Попробовала для Осени - не получилось.
Нужно, если Кол-во = 300  На заказ. Кнопка - Заказать. И дата доставки не показывалась, если на заказ.

Сейчас такой код:

<!-- Доступность товара -->
							<div id="product_stock_stat" class="goodsDataMainModificationAvailable">
							<p id="availability_statut" class="available-true" {% IF GOODS_MOD_REST_VALUE=0 %}style="display:none;"{% ENDIF %}> <span id="availability_value">Товар есть в наличии</span></p></br>
									  <p>*Доставка<br>по Санкт-Петербургу: </span></br><span style="color: #02886e;"><span class="date"></span>
							<p class="warning_inline available-false" id="last_quantities" {% IF GOODS_MOD_REST_VALUE>0 %}style="display:none;"{% ENDIF %}>Нет в наличии</p>
						   </div>
						<!-- /Доступность товара -->

В Сиянии было очень хорошо все нужное прописано, может в Осень можно кое-что перенести?

<!-- Доступность товара -->
																  <div rel="true" class="available-true" {% IF GOODS_MOD_REST_VALUE=0 %}style="display:none;"{% ENDIF %}>
														{% IF GOODS_MOD_REST_VALUE=300 %}
														<small>На заказ: 2-3 недели</small>
														{% ELSE %}
														<small>Товар есть в наличии</small>
																				<p>*Доставка<br>по Санкт-Петербургу: </span></br><span style="color: #02886e;"><span class="date"></span>
																  </div>
																				<div rel="false" class="available-false" {% IF GOODS_MOD_REST_VALUE>0 %}style="display:none;"{% ENDIF %}>Товара нет в наличии</div>
																  </div>
														{% ENDIF %}
													   
												  </div> 
					 
				  </td>
				  <td class="goodsDataFormSubmitButton">
					 <a {% IF GOODS_MOD_REST_VALUE=0 %} style="display:none;" {%ENDIF%} class="more-link submit tocart" onclick=" $('.goodsDataForm').submit(); return false;" href="#">Купить</a>
<a {% IF GOODS_MOD_REST_VALUE>0 %} style="display:none;" {%ENDIF%} class="more-link submit uv" onclick="document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара «{GOODS_NAME}»?' " href="#">Уведомить</a>
				   {% IF GOODS_MOD_NB_GOODS_IN_CART > 0 %}
<a href="http://alinka1.ru/cart"<span style="color:red; font-size: small;">✔Товар уже в корзине!</span>
</div>
{% ENDIF %}

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

  • Снимок.PNG


#28 support 2.0

support 2.0

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

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

Отправлено 25 Октябрь 2013 - 15:33

Просмотр сообщенияvelena168 (25 Октябрь 2013 - 13:47) писал:

Попробовала для Осени - не получилось.
Нужно, если Кол-во = 300  На заказ. Кнопка - Заказать. И дата доставки не показывалась, если на заказ.

Сейчас такой код:

<!-- Доступность товара -->
						 <div id="product_stock_stat" class="goodsDataMainModificationAvailable">
						 <p id="availability_statut" class="available-true" {% IF GOODS_MOD_REST_VALUE=0 %}style="display:none;"{% ENDIF %}> <span id="availability_value">Товар есть в наличии</span></p></br>
									 <p>*Доставка<br>по Санкт-Петербургу: </span></br><span style="color: #02886e;"><span class="date"></span>
						 <p class="warning_inline available-false" id="last_quantities" {% IF GOODS_MOD_REST_VALUE>0 %}style="display:none;"{% ENDIF %}>Нет в наличии</p>
						 </div>
					 <!-- /Доступность товара -->

В Сиянии было очень хорошо все нужное прописано, может в Осень можно кое-что перенести?

<!-- Доступность товара -->
																 <div rel="true" class="available-true" {% IF GOODS_MOD_REST_VALUE=0 %}style="display:none;"{% ENDIF %}>
													 {% IF GOODS_MOD_REST_VALUE=300 %}
													 <small>На заказ: 2-3 недели</small>
													 {% ELSE %}
													 <small>Товар есть в наличии</small>
																			 <p>*Доставка<br>по Санкт-Петербургу: </span></br><span style="color: #02886e;"><span class="date"></span>
																 </div>
																			 <div rel="false" class="available-false" {% IF GOODS_MOD_REST_VALUE>0 %}style="display:none;"{% ENDIF %}>Товара нет в наличии</div>
																 </div>
													 {% ENDIF %}
													
												 </div>
					
				 </td>
				 <td class="goodsDataFormSubmitButton">
					 <a {% IF GOODS_MOD_REST_VALUE=0 %} style="display:none;" {%ENDIF%} class="more-link submit tocart" onclick=" $('.goodsDataForm').submit(); return false;" href="#">Купить</a>
<a {% IF GOODS_MOD_REST_VALUE>0 %} style="display:none;" {%ENDIF%} class="more-link submit uv" onclick="document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара «{GOODS_NAME}»?' " href="#">Уведомить</a>
				 {% IF GOODS_MOD_NB_GOODS_IN_CART > 0 %}
<a href="http://alinka1.ru/cart"<span style="color:red; font-size: small;">✔Товар уже в корзине!</span>
</div>
{% ENDIF %}
Здравствуйте. Для того, чтобы эта надпись "под заказ" высвечивалась при кол-ве товара = 300, найдите в шаблоне Товар блок
<!-- Доступность товара -->
						 <div id="product_stock_stat" class="goodsDataMainModificationAvailable">
						 <p id="availability_statut" class="available-true" {% IF GOODS_MOD_REST_VALUE=0 %}style="display:none;"{% ENDIF %}> <span id="availability_value">Товар есть в наличии</span></p></br>
									 <p>*Доставка<br>по Санкт-Петербургу: </span></br><span style="color: #02886e;"><span class="date"></span>
						 <p class="warning_inline available-false" id="last_quantities" {% IF GOODS_MOD_REST_VALUE>0 %}style="display:none;"{% ENDIF %}>Нет в наличии</p>
						 </div>
					 <!-- /Доступность товара -->
замените его на
<!-- Доступность товара -->
							<div id="product_stock_stat" class="goodsDataMainModificationAvailable">
							<p id="availability_statut" class="available-true" {% IF GOODS_MOD_REST_VALUE=0 || GOODS_MOD_REST_VALUE=300 %}style="display:none;"{% ENDIF %}> <span id="availability_value">Товар есть в наличии</span></p></br>
									<p {% IF GOODS_MOD_REST_VALUE=0 || GOODS_MOD_REST_VALUE=300 %}style="display:none;"{% ENDIF %}>*Доставка<br>по Санкт-Петербургу: </span></br><span style="color: #02886e;"><span class="date"></span> </p>
							<p class="warning_inline available-false" id="last_quantities" {% IF GOODS_MOD_REST_VALUE>0 %}style="display:none;"{% ENDIF %}>Нет в наличии</p>
{% IF GOODS_MOD_REST_VALUE=300 %}<p class="warning_inline available-false" id="last_quantities">Под заказ</p>{% ENDIF %}
						   </div>
						<!-- /Доступность товара -->
Теперь у Вас при кол-ве товара равное 300 будет надпись: Под заказ
При кол-ве = 0 : нет в наличии
При кол-ве >0, но не равное 300: товар есть в наличии

также замените
value="Купить"
на
value="{% IF GOODS_MOD_REST_VALUE=300 %}Заказать{% ELSE %}Купить{% ENDIF%}"


#29 velena168

velena168

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

  • Пользователи
  • PipPipPipPip
  • 1 643 сообщений
  • ГородСанкт- Петербург

Отправлено 25 Октябрь 2013 - 16:23

Просмотр сообщенияsupport 2.0 (25 Октябрь 2013 - 15:33) писал:

Спасибо, почти все хорошо получилось. Единственное, если несколько модификаций и одной или нескольких нет в наличии, а какие-то есть, то дата доставки присутствует, что не совсем логично.

P. S. А можно сделать, если товара нет в наличии, на кнопке КУПИТЬ изменить надпись на примерно "Товар недоступен для заказа" или кирпич какой-то повесить?

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

  • Снимок.PNG8.PNG


#30 sengun

sengun

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

  • Модератоpы
  • 1 139 сообщений
  • ГородНижний Новгород

Отправлено 25 Октябрь 2013 - 21:01

Просмотр сообщенияvelena168 (25 Октябрь 2013 - 16:23) писал:

Спасибо, почти все хорошо получилось. Единственное, если несколько модификаций и одной или нескольких нет в наличии, а какие-то есть, то дата доставки присутствует, что не совсем логично.

P. S. А можно сделать, если товара нет в наличии, на кнопке КУПИТЬ изменить надпись на примерно "Товар недоступен для заказа" или кирпич какой-то повесить?
Здравствуйте. В шаблоне "Товар" строку
<p {% IF GOODS_MOD_REST_VALUE=0 || GOODS_MOD_REST_VALUE=300 %}style="display:none;"{% ENDIF %}>*Доставка<br>по Санкт-Петербургу: </span></br><span style="color: #02886e;"><span class="date"></span> </p>
замените на эту
<p id="deliv_spb" {% IF GOODS_MOD_REST_VALUE=0 || GOODS_MOD_REST_VALUE=300 %}style="display:none;"{% ENDIF %}>*Доставка<br>по Санкт-Петербургу: </span></br><span style="color: #02886e;"><span class="date"></span> </p>
И в main.js код
// Изменяем данные товара для выбранных параметров. Если нашлась выбранная модификация
	  if(modificationBlock.length) {
		// Цена товара
		goodsPriceNow.html(modificationPriceNowFormated);
		// Старая цена товара
		if(modificationPriceOld>modificationPriceNow) {
		  goodsPriceOld.html(modificationPriceOldFormated);
		} else {
		  goodsPriceOld.html('');
		}
		// Есть ли товар есть в наличии
		if(modificationRestValue>0) {
		  goodsAvailableTrue.show();
		  goodsAvailableFalse.hide();
		  // Если товара нет в наличии
		} else {
		  goodsAvailableTrue.hide();
		  goodsAvailableFalse.show();
		}
замените на этот
	  // Изменяем данные товара для выбранных параметров. Если нашлась выбранная модификация
	  if(modificationBlock.length) {
		//Доставка по Санкт-Петербургу
		if(modificationRestValue == 0 || modificationRestValue == 300)
		  $('#deliv_info').hide();
		else
		  $('#deliv_info').show();
	   
		// Цена товара
		goodsPriceNow.html(modificationPriceNowFormated);
		// Старая цена товара
		if(modificationPriceOld>modificationPriceNow) {
		  goodsPriceOld.html(modificationPriceOldFormated);
		} else {
		  goodsPriceOld.html('');
		}
		// Есть ли товар есть в наличии
		if(modificationRestValue>0) {
		  goodsAvailableTrue.show();
		  goodsAvailableFalse.hide();
		  $('#add_to_cart input').val("Купить");
		  // Если товара нет в наличии
		} else {
		  goodsAvailableTrue.hide();
		  goodsAvailableFalse.show();
		  $('#add_to_cart input').val("Невозможно заказать");
		}
"Невозможно заказать" - текст кнопки желательно не длиннее такого, иначе она слетит вниз.

#31 velena168

velena168

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

  • Пользователи
  • PipPipPipPip
  • 1 643 сообщений
  • ГородСанкт- Петербург

Отправлено 25 Октябрь 2013 - 22:05

Просмотр сообщенияsengun (25 Октябрь 2013 - 21:01) писал:

Здравствуйте. Спасибо, уже гораздо лучше. Но все-таки

если у товара только 1 модификация, то ДАТА не подставляется, что хорошо, а кнопка все же осталась Купить.
/goods/fisher-price-16

И, наоборот, если несколько модификаций (в примере 2), то кнопка замечательная, но дата стоит.
/goods/detskij-kostum-s-kapushonom-belyj-s-sinim?from=OWUz   размер 68-74.

Чуть-чуть и будет супер.

P. S. Может, я какую-нибудь закорючку пропустила?

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

  • Снимок.PNG9.PNG
  • Снимок.PNG10.PNG


#32 sengun

sengun

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

  • Модератоpы
  • 1 139 сообщений
  • ГородНижний Новгород

Отправлено 25 Октябрь 2013 - 22:52

Просмотр сообщенияvelena168 (25 Октябрь 2013 - 22:05) писал:

Здравствуйте. Спасибо, уже гораздо лучше. Но все-таки

если у товара только 1 модификация, то ДАТА не подставляется, что хорошо, а кнопка все же осталась Купить.
/goods/fisher-price-16

И, наоборот, если несколько модификаций (в примере 2), то кнопка замечательная, но дата стоит.
/goods/detskij-kostum-s-kapushonom-belyj-s-sinim?from=OWUz   размер 68-74.

Чуть-чуть и будет супер.

P. S. Может, я какую-нибудь закорючку пропустила?
Насчет доставки - ошибочка в коде, который я посоветовал. В main.js
				  $('#deliv_info').hide();
				else
				  $('#deliv_info').show();
замените на этот
				  $('#deliv_spb').hide();
				else
				  $('#deliv_spb').show();
А чтобы кнопочку добить, в шаблоне "Товар" замените строку
<p id="add_to_cart"> <input type="submit" name="Submit" value="{% IF GOODS_MOD_REST_VALUE=300 %}Заказать{% ELSE %}Купить{% ENDIF%}" class="add_to_cart" onclick="$('.goodsDataForm').submit()"></p>
на эту
<p id="add_to_cart"> <input type="submit" name="Submit" value="{% IF GOODS_MOD_REST_VALUE=300 %}Заказать{% ELSEIF GOODS_MOD_REST_VALUE=0 %}Невозможно заказать{% ELSE %}Купить{% ENDIF%}" class="add_to_cart" onclick="$('.goodsDataForm').submit()"></p>
и, как я понял, судя по этой строке текст в кнопке должен быть "Заказать", если товара в наличие 300 штук. Тогда надо еще в main.js подправить это, я этого не учел в прошлый раз. Код
				// Есть ли товар есть в наличии
				if(modificationRestValue>0) {
				  goodsAvailableTrue.show();
				  goodsAvailableFalse.hide();
				  $('#add_to_cart input').val("Купить");
				  // Если товара нет в наличии
				} else {
				  goodsAvailableTrue.hide();
				  goodsAvailableFalse.show();
				  $('#add_to_cart input').val("Невозможно заказать");
				}
замените на этот
				// Есть ли товар есть в наличии
				if(modificationRestValue>0 && modificationRestValue != 300) {
				  goodsAvailableTrue.show();
				  goodsAvailableFalse.hide();
				  $('#add_to_cart input').val("Купить");
				  // Если товара нет в наличии
				} else if (modificationRestValue == 300) {
				  goodsAvailableTrue.show();
				  goodsAvailableFalse.hide();
				  $('#add_to_cart input').val("Заказать");				 
				}
				else {
				  goodsAvailableTrue.hide();
				  goodsAvailableFalse.show();
				  $('#add_to_cart input').val("Невозможно заказать");
				}


#33 velena168

velena168

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

  • Пользователи
  • PipPipPipPip
  • 1 643 сообщений
  • ГородСанкт- Петербург

Отправлено 26 Октябрь 2013 - 00:43

Просмотр сообщенияsengun (25 Октябрь 2013 - 22:52) писал:

<p id="add_to_cart"> <input type="submit" name="Submit" value="{% IF GOODS_MOD_REST_VALUE=300 %}Заказать{% [color=#ff0000]ELSEIF [/color]GOODS_MOD_REST_VALUE=0 %}Невозможно заказать{% ELSE %}Купить{% ENDIF%}" class="add_to_cart" onclick="$('.goodsDataForm').submit()"></p>

Спасибо, большое. Уже даже боюсь сказать что все отлично, но вроде все работает.
Там, в коде красным выделено, так и должно быть?
Еще раз спасибо.

#34 Vaccina

Vaccina

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

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

Отправлено 26 Октябрь 2013 - 03:45

Если вы имеете в виду подсветку в редакторе тем - то ничего страшного в этом нет. Если шаблон сохраняется и отображается все хорошо - то значит все хорошо :)

#35 velena168

velena168

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

  • Пользователи
  • PipPipPipPip
  • 1 643 сообщений
  • ГородСанкт- Петербург

Отправлено 03 Декабрь 2013 - 17:11

Просмотр сообщенияvelena168 (26 Октябрь 2013 - 00:43) писал:

Спасибо, большое. Уже даже боюсь сказать что все отлично, но вроде все работает.
Там, в коде красным выделено, так и должно быть?
Еще раз спасибо.
Ну, вот, опять все сбилось после переустановки шаблона для фильтров по ценам. Не могу найти, что.
Условие {% IF GOODS_MOD_REST_VALUE=300 %}<p class="warning_inline available-false" id="last_quantities">На заказ: 1-2 недели</p>{% ENDIF %}
не работает, пишет есть в наличии.
Сейчас, вроде появилась надпись На заказ: 1-2 недели, а при обновлении страницы опять есть в наличии. Странно, как-то, через раз.
Чего-то не хватает...

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

  • Снимок.PNG


#36 Сake

Сake

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

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

Отправлено 04 Декабрь 2013 - 03:09

В данном случае вероятно наличие меняется кодом в файле main.js при загрузке страницы. Так как у вас несколько модификаций, то изначальна модификация скорее всего имеет другое наличие отличное от значения 300. В данном случае скрывать код через условие не следует, так как если присутствует не одна модификация - то при смене модификации показывать будет нечего. Замените вашу строку
{% IF GOODS_MOD_REST_VALUE=300 %}<p class="warning_inline available-false" id="last_quantities">На заказ: 1-2 недели</p>{% ENDIF %}
на
<p {% IFNOT GOODS_MOD_REST_VALUE=300 %}style="display: none;"{% ENDIF %} class="warning_inline available-false" id="last_quantities">На заказ: 1-2 недели</p>
После вероятно необходимо будет внести изменения в файл main.js. Для этого вам необходимо сообщить адрес страницы товара который вы приводите на изображении.

#37 velena168

velena168

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

  • Пользователи
  • PipPipPipPip
  • 1 643 сообщений
  • ГородСанкт- Петербург

Отправлено 04 Декабрь 2013 - 08:15

Просмотр сообщенияСake (04 Декабрь 2013 - 03:09) писал:

В данном случае вероятно наличие меняется кодом в файле main.js при загрузке страницы. Так как у вас несколько модификаций, то изначальна модификация скорее всего имеет другое наличие отличное от значения 300. В данном случае скрывать код через условие не следует, так как если присутствует не одна модификация - то при смене модификации показывать будет нечего. Замените вашу строку
{% IF GOODS_MOD_REST_VALUE=300 %}<p class="warning_inline available-false" id="last_quantities">На заказ: 1-2 недели</p>{% ENDIF %}
на
<p {% IFNOT GOODS_MOD_REST_VALUE=300 %}style="display: none;"{% ENDIF %} class="warning_inline available-false" id="last_quantities">На заказ: 1-2 недели</p>
После вероятно необходимо будет внести изменения в файл main.js. Для этого вам необходимо сообщить адрес страницы товара который вы приводите на изображении.
Изменения внесла. .../goods/mebel-yunga-1?from=ZTM0#show_tab_1

Что-то все нарушилось
Кнопка Невозможно заказать - добавляет закончившийся товар в корзину.
При быборе модификации Товара, которой нет в наличии, вообще винегрет.
Размер 104
.../goods/naradnyj-kostum-6#show_tab_1

#38 Сake

Сake

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

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

Отправлено 05 Декабрь 2013 - 02:48

Дополнительные изменения необходимо внести в файл main.js а именно в блок кода

// Изменяем данные товара для выбранных параметров. Если нашлась выбранная модификация
		  if(modificationBlock.length) {
				//Доставка по Санкт-Петербургу
				if(modificationRestValue == 0 || modificationRestValue == 300)
				  $('#deliv_spb').hide();
				  else
				  $('#deliv_spb').show();
		  
				// Цена товара
				goodsPriceNow.html(modificationPriceNowFormated);
				// Старая цена товара
				if(modificationPriceOld>modificationPriceNow) {
				  goodsPriceOld.html(modificationPriceOldFormated);
				} else {
				  goodsPriceOld.html('');
				}
				// Есть ли товар есть в наличии
								if(modificationRestValue>0 && modificationRestValue != 300) {
								  goodsAvailableTrue.show();
								  goodsAvailableFalse.hide();
								  $('#add_to_cart input').val("Купить");
								  // Если товара нет в наличии
								} else if (modificationRestValue == 300) {
								  goodsAvailableTrue.show();
								  goodsAvailableFalse.hide();
								  $('#add_to_cart input').val("Заказать");							  
								}
								else {
								  goodsAvailableTrue.hide();
								  goodsAvailableFalse.show();
								  $('#add_to_cart input').val("Невозможно заказать");
								}

судя по коду у вас уже есть необходимые условия заданные для кнопки. В данном случае останется только добавить в эти условия дополнительные инструкции. Ссылкой на ваш созданный блок "На заказ: 1-2 недели" будет являться код

goodsAvailable.find('.available-false:last')

если я правильно понимаю структуру ваших условий, то код должен быть таким

// Изменяем данные товара для выбранных параметров. Если нашлась выбранная модификация
		  if(modificationBlock.length) {
				//Доставка по Санкт-Петербургу
				if(modificationRestValue == 0 || modificationRestValue == 300)
				  $('#deliv_spb').hide();
				  else
				  $('#deliv_spb').show();
		  
				// Цена товара
				goodsPriceNow.html(modificationPriceNowFormated);
				// Старая цена товара
				if(modificationPriceOld>modificationPriceNow) {
				  goodsPriceOld.html(modificationPriceOldFormated);
				} else {
				  goodsPriceOld.html('');
				}
				// Есть ли товар есть в наличии
								goodsAvailable.find('.available-false:last').hide();
								if(modificationRestValue>0 && modificationRestValue != 300) {
								  goodsAvailableTrue.show();
								  goodsAvailableFalse.hide();
								  $('#add_to_cart input').val("Купить");
								  // Если товара нет в наличии
								} else if (modificationRestValue == 300) {
								  goodsAvailableTrue.show();
								  goodsAvailableFalse.hide();
								  $('#add_to_cart input').val("Заказать");
								  goodsAvailable.find('.available-false:last').show();
								}
								else {
								  goodsAvailableTrue.hide();
								  goodsAvailableFalse.show();
								  $('#add_to_cart input').val("Невозможно заказать");
								}


#39 velena168

velena168

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

  • Пользователи
  • PipPipPipPip
  • 1 643 сообщений
  • ГородСанкт- Петербург

Отправлено 05 Декабрь 2013 - 08:51

Просмотр сообщенияСake (05 Декабрь 2013 - 02:48) писал:

Дополнительные изменения необходимо внести в файл main.js а именно в блок кода

// Изменяем данные товара для выбранных параметров. Если нашлась выбранная модификация
		 if(modificationBlock.length) {
			 //Доставка по Санкт-Петербургу
			 if(modificationRestValue == 0 || modificationRestValue == 300)
				 $('#deliv_spb').hide();
				 else
				 $('#deliv_spb').show();
		
			 // Цена товара
			 goodsPriceNow.html(modificationPriceNowFormated);
			 // Старая цена товара
			 if(modificationPriceOld>modificationPriceNow) {
				 goodsPriceOld.html(modificationPriceOldFormated);
			 } else {
				 goodsPriceOld.html('');
			 }
			 // Есть ли товар есть в наличии
							 if(modificationRestValue>0 && modificationRestValue != 300) {
								 goodsAvailableTrue.show();
								 goodsAvailableFalse.hide();
								 $('#add_to_cart input').val("Купить");
								 // Если товара нет в наличии
							 } else if (modificationRestValue == 300) {
								 goodsAvailableTrue.show();
								 goodsAvailableFalse.hide();
								 $('#add_to_cart input').val("Заказать");							
							 }
							 else {
								 goodsAvailableTrue.hide();
								 goodsAvailableFalse.show();
								 $('#add_to_cart input').val("Невозможно заказать");
							 }

судя по коду у вас уже есть необходимые условия заданные для кнопки. В данном случае останется только добавить в эти условия дополнительные инструкции. Ссылкой на ваш созданный блок "На заказ: 1-2 недели" будет являться код

goodsAvailable.find('.available-false:last')

если я правильно понимаю структуру ваших условий, то код должен быть таким

// Изменяем данные товара для выбранных параметров. Если нашлась выбранная модификация
		 if(modificationBlock.length) {
			 //Доставка по Санкт-Петербургу
			 if(modificationRestValue == 0 || modificationRestValue == 300)
				 $('#deliv_spb').hide();
				 else
				 $('#deliv_spb').show();
		
			 // Цена товара
			 goodsPriceNow.html(modificationPriceNowFormated);
			 // Старая цена товара
			 if(modificationPriceOld>modificationPriceNow) {
				 goodsPriceOld.html(modificationPriceOldFormated);
			 } else {
				 goodsPriceOld.html('');
			 }
			 // Есть ли товар есть в наличии
goodsAvailable.find('.available-false:last').hide();
							 if(modificationRestValue>0 && modificationRestValue != 300) {
								 goodsAvailableTrue.show();
								 goodsAvailableFalse.hide();
								 $('#add_to_cart input').val("Купить");
								 // Если товара нет в наличии
							 } else if (modificationRestValue == 300) {
								 goodsAvailableTrue.show();
								 goodsAvailableFalse.hide();
								 $('#add_to_cart input').val("Заказать");
goodsAvailable.find('.available-false:last').show();
							 }
							 else {
								 goodsAvailableTrue.hide();
								 goodsAvailableFalse.show();
								 $('#add_to_cart input').val("Невозможно заказать");
							 }
Сейчас:

1. в скрине
2. В сравнении товаров не работают условия - кнопки, наличие.
Но, ведь было же все нормально, по инструкциям выше. Вернуться назад не могу, т. к. уже много изменений, да и не помогает бэкап.
/goods/naradnyj-kostum-6#show_tab_1 104 размер
.../goods/mebel-turbo-2#show_tab_1

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

  • Снимок.PNG


#40 Сake

Сake

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

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

Отправлено 06 Декабрь 2013 - 02:50

1) Попробуйте код в файле main.js

else if (modificationRestValue == 300) {
																 goodsAvailableTrue.show();
																 goodsAvailableFalse.hide();
																 $('#add_to_cart input').val("Заказать");
goodsAvailable.find('.available-false:last').show();
														 }
														 else

заменить на

else if (modificationRestValue == 300) {
																 goodsAvailableTrue.hide();
																 goodsAvailableFalse.hide();
																 $('#add_to_cart input').val("Заказать");
goodsAvailable.find('.available-false:last').show();
														 }
														 else

2) В шаблоне сравнения товара у вас присутствует синтаксическая ошибка, из-за чего код неверно разбирается и в результате ничего не отображается напротив наличия. Найдите в шаблоне "Сравнение товаров" код

{% FOR goods_mod_info %}
					<td class="borderAll compare-td compare-td-{goods_mod_info.index}" {{%IF goods_mod_info.REST_VALUE=300 %}На заказ: 2-3 недели{%ELSEIF goods_mod_info.REST_VALUE=0 %}Товара нет в наличии{% ELSE %}Товар есть в наличии{% ENDIF %}
					</td>
				  {% ENDFOR %}

и замените его на

{% FOR goods_mod_info %}
					<td class="borderAll compare-td compare-td-{goods_mod_info.index}"> {%IF goods_mod_info.REST_VALUE=300 %}На заказ: 2-3 недели{%ELSEIF goods_mod_info.REST_VALUE=0 %}Товара нет в наличии{% ELSE %}Товар есть в наличии{% ENDIF %}
					</td>
				  {% ENDFOR %}





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

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