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



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

#81 murat-ufa

murat-ufa

    Пользователь

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

Отправлено 02 Февраль 2017 - 09:05

Просмотр сообщенияFirefly (01 Февраль 2017 - 18:12) писал:

Проверьте сейчас, пожалуйста.
Перенес код в другой блок.
Сейчас появилось. Спасибо!
А можно сделать чтобы кнопка была не только в карточке товара, но и в общем каталоге?

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

  • 5.jpg


#82 Firefly

Firefly

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

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

Отправлено 02 Февраль 2017 - 15:13

Просмотр сообщенияmurat-ufa (02 Февраль 2017 - 09:05) писал:

Сейчас появилось. Спасибо!
А можно сделать чтобы кнопка была не только в карточке товара, но и в общем каталоге?

Изменения Вам произвел. Проверьте, пожалуйста.

#83 murat-ufa

murat-ufa

    Пользователь

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

Отправлено 02 Февраль 2017 - 15:26

Просмотр сообщенияFirefly (02 Февраль 2017 - 15:13) писал:

Изменения Вам произвел. Проверьте, пожалуйста.
Спасибо!)

#84 imysterious

imysterious

    Пользователь

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

Отправлено 23 Март 2017 - 18:36

Доброго времени суток!
Перечила тут инструкцию, но для своего шаблона спорт не нашла инструкций, коды отличаются
Помогите пожалуйста и мне сделать из надписи "под заказ" (если товара нет в наличии) кнопку, при нажатии которой переводилось в форму заказа, please
Аккаунт SL-392690

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

  • 2017-03-23_18-30-24.png


#85 лиса

лиса

    Продвинутый пользователь

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

Отправлено 24 Март 2017 - 02:45

Просмотр сообщенияFirefly (01 Февраль 2017 - 14:53) писал:

Зайдите в админ. панель -> Сайт -> Редактор шаблонов -> Шаблоны -> Товар, найдите код:
	 <!-- Добавление товара в Избранное, Сравнение -->

Замените на:
		 <button class="button" onclick="if($(this).text() == '&nbsp;Уведомить меня') { document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара &laquo;{GOODS_NAME}&raquo;?' } else { $('.goodsDataForm').submit() } return false;" title="Положить &laquo;{GOODS_NAME}&raquo; в корзину"/ >Уведомить меня</button>
	 <!-- Добавление товара в Избранное, Сравнение -->

Просмотр сообщенияFirefly (01 Февраль 2017 - 18:12) писал:

Проверьте сейчас, пожалуйста.
Перенес код в другой блок.

А нам-то озвучьте куда на самом деле вставлять строку надо? Пожалуйста)

#86 Stasya

Stasya

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

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

Отправлено 28 Март 2017 - 13:01

Просмотр сообщениялиса (24 Март 2017 - 02:45) писал:

А нам-то озвучьте куда на самом деле вставлять строку надо? Пожалуйста)
Здравствуйте. в шаблоне Товар найдите блок
<!-- Доступность товара -->
	  <div class="goodsDataMainModificationAvailable f-fix">
	  {% IF GOODS_MOD_REST_VALUE>0 %}<span itemprop="availability" content="{% IF GOODS_MOD_REST_VALUE>0 %}in_stock{% ELSE %}out_of_stock{% ENDIF %}" class="hide"></span>{% ENDIF %}
		<div class="available-true" itemprop="availability" href="http://schema.org/InStock" {% IF GOODS_MOD_REST_VALUE=0 %}style="display:none;"{% ENDIF %}>Наличие товара: <span>В наличии</span></div>
		<div class="available-false" itemprop="availability" href="http://schema.org/OutOfStock" style="{% IF GOODS_MOD_REST_VALUE>0 %}display:none;{% ENDIF %}">Наличие товара: <span>Товара нет в наличии</span></div>
	  </div>
и сразу после него вставьте код
<div class="f-fix">
		<button class="button" onclick="if($(this).text() == '&nbsp;Уведомить меня') { document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара &laquo;{GOODS_NAME}&raquo;?' } else { $('.goodsDataForm').submit() } return false;" title="Положить &laquo;{GOODS_NAME}&raquo; в корзину"/ >Уведомить меня</button>
	  </div>


#87 Милый Мишка

Милый Мишка

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

  • Пользователи
  • PipPipPipPip
  • 247 сообщений
  • ГородНижний Новгород

Отправлено 29 Март 2017 - 09:05

Добрый день. Код вставили, но он работает некорректно - кнопка появилась. но при ее нажатии, вместо перехода к форме обратной связи происходит добавление товара в корзину.
Нужно:
1. Чтобы кнопка была видна только при отсутствующей модификации товара, то есть, если модификация товара в наличии, кнопки "Уведомить меня" вообще не должно быть.
2. Чтобы при нажатии на кнопку "Уведомить меня", клиента переправляли к форме обратной связи с набранным текстом: "Прошу уведомить меня о наличии..."

#88 Stasya

Stasya

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

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

Отправлено 30 Март 2017 - 15:39

Просмотр сообщенияМилый Мишка (29 Март 2017 - 09:05) писал:

Добрый день. Код вставили, но он работает некорректно - кнопка появилась. но при ее нажатии, вместо перехода к форме обратной связи происходит добавление товара в корзину.
Нужно:
1. Чтобы кнопка была видна только при отсутствующей модификации товара, то есть, если модификация товара в наличии, кнопки "Уведомить меня" вообще не должно быть.
2. Чтобы при нажатии на кнопку "Уведомить меня", клиента переправляли к форме обратной связи с набранным текстом: "Прошу уведомить меня о наличии..."
В шаблоне Товар найдите блок
<div class="f-fix">
				<button class="button" onclick="if($(this).text() == '&nbsp;Уведомить меня') { document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара &laquo;{GOODS_NAME}&raquo;?' } else { $('.goodsDataForm').submit() } return false;" title="Положить &laquo;{GOODS_NAME}&raquo; в корзину"/ >Уведомить меня</button>
		  </div>
и замените его на
<div class="f-fix">
				<button class="button calMeGoods" onclick="if($(this).text() == 'Уведомить меня') { document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара &laquo;{GOODS_NAME}&raquo;?' } else { $('.goodsDataForm').submit() } return false;" title="Положить &laquo;{GOODS_NAME}&raquo; в корзину"/ >Уведомить меня</button>
		  </div>
Далее в файле main.js найдите блок
// Есть ли товар есть в наличии
		if(modificationRestValue>0) {
		  goodsAvailableTrue.show();
		  goodsAvailableFalse.hide();
		  goodsAvailableAddForm.show();
		  goodsAvailableAddCart.show();
		  goodsAvailableQty.show();
		// Если товара нет в наличии
		} else {
		  goodsAvailableTrue.hide();
		  goodsAvailableFalse.show();
		  goodsAvailableAddForm.hide();
		  goodsAvailableAddCart.hide();
		  goodsAvailableQty.hide();
		}
и замените его на
// Есть ли товар есть в наличии
		if(modificationRestValue>0) {
		  goodsAvailableTrue.show();
		  goodsAvailableFalse.hide();
		  goodsAvailableAddForm.show();
		  goodsAvailableAddCart.show();
		  goodsAvailableQty.show();
		  $('button.calMeGoods').hide();
		// Если товара нет в наличии
		} else {
		  goodsAvailableTrue.hide();
		  goodsAvailableFalse.show();
		  goodsAvailableAddForm.hide();
		  goodsAvailableAddCart.hide();
		  goodsAvailableQty.hide();
		   $('button.calMeGoods').show();
		}


#89 Милый Мишка

Милый Мишка

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

  • Пользователи
  • PipPipPipPip
  • 247 сообщений
  • ГородНижний Новгород

Отправлено 30 Март 2017 - 16:10

Просмотр сообщенияStasya (30 Март 2017 - 15:39) писал:

В шаблоне Товар найдите блок
<div class="f-fix">
			 <button class="button" onclick="if($(this).text() == '&nbsp;Уведомить меня') { document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара &laquo;{GOODS_NAME}&raquo;?' } else { $('.goodsDataForm').submit() } return false;" title="Положить &laquo;{GOODS_NAME}&raquo; в корзину"/ >Уведомить меня</button>
		 </div>
и замените его на
<div class="f-fix">
			 <button class="button calMeGoods" onclick="if($(this).text() == 'Уведомить меня') { document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара &laquo;{GOODS_NAME}&raquo;?' } else { $('.goodsDataForm').submit() } return false;" title="Положить &laquo;{GOODS_NAME}&raquo; в корзину"/ >Уведомить меня</button>
		 </div>
Далее в файле main.js найдите блок
// Есть ли товар есть в наличии
	 if(modificationRestValue>0) {
		 goodsAvailableTrue.show();
		 goodsAvailableFalse.hide();
		 goodsAvailableAddForm.show();
		 goodsAvailableAddCart.show();
		 goodsAvailableQty.show();
	 // Если товара нет в наличии
	 } else {
		 goodsAvailableTrue.hide();
		 goodsAvailableFalse.show();
		 goodsAvailableAddForm.hide();
		 goodsAvailableAddCart.hide();
		 goodsAvailableQty.hide();
	 }
и замените его на
// Есть ли товар есть в наличии
	 if(modificationRestValue>0) {
		 goodsAvailableTrue.show();
		 goodsAvailableFalse.hide();
		 goodsAvailableAddForm.show();
		 goodsAvailableAddCart.show();
		 goodsAvailableQty.show();
		 $('button.calMeGoods').hide();
	 // Если товара нет в наличии
	 } else {
		 goodsAvailableTrue.hide();
		 goodsAvailableFalse.show();
		 goodsAvailableAddForm.hide();
		 goodsAvailableAddCart.hide();
		 goodsAvailableQty.hide();
		 $('button.calMeGoods').show();
	 }

Спасибо, все работает.

Еще один вопрос.
Как сделать так, чтобы в набранном тексте было не только название товара, но и название модификации.

То есть сейчас текст такой "Могли бы Вы уведомить меня о наличии товара «Детский осенний-весенний костюм".

Нужно "Могли бы Вы уведомить меня о наличии товара «Детский осенний-весенний костюм РАЗМЕР 86".

Иначе если в наличии нет нескольких модификаций, то мы не можем определить о наличии какой именно модификации просим уведомить клиент.

#90 kirussian

kirussian

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

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

Отправлено 05 Апрель 2017 - 10:32

Считаю, что вопрос актуален (для многих). А лично для меня - в рамках шаблона Спорт.

#91 Stasya

Stasya

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

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

Отправлено 17 Апрель 2017 - 13:32

Просмотр сообщенияМилый Мишка (30 Март 2017 - 16:10) писал:

Спасибо, все работает.

Еще один вопрос.
Как сделать так, чтобы в набранном тексте было не только название товара, но и название модификации.

То есть сейчас текст такой "Могли бы Вы уведомить меня о наличии товара «Детский осенний-весенний костюм".

Нужно "Могли бы Вы уведомить меня о наличии товара «Детский осенний-весенний костюм РАЗМЕР 86".

Иначе если в наличии нет нескольких модификаций, то мы не можем определить о наличии какой именно модификации просим уведомить клиент.
Здравствуйте. Вам необходимо в шаблоне Товар найти строку
<button class="button calMeGoods" onclick="if($(this).text() == 'Уведомить меня') { document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара &laquo;{GOODS_NAME}&raquo;?' } else { $('.goodsDataForm').submit() } return false;" title="Положить &laquo;{GOODS_NAME}&raquo; в корзину"/ >Уведомить меня</button>
и заменить ее на
<button class="button calMeGoods"/ >Уведомить меня</button>
Далее в конец файла main.js добавьте блок
$(document).ready(function(){
  $('.calMeGoods').click(function(){
	if($(this).text() == 'Уведомить меня') { 
	  var modInfAll ="";
	  var nameGood = $('h1').text();
	  if($('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty').length >= 1 && $('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty select option').length > 1){
		$('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty').each(function(){
		  modInfAll = modInfAll + $(this).find('span').text() + $(this).find('option[value="'+ $(this).find('select').val() +'"]').text()+';';
		});
	  }
	  document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара "'+ nameGood +'" '+modInfAll+'?'
	} else { 
	  $('.goodsDataForm').submit() 
	}
	return false;
  })
})


#92 kirussian

kirussian

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

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

Отправлено 17 Апрель 2017 - 14:00

Просмотр сообщенияStasya (17 Апрель 2017 - 13:32) писал:

Здравствуйте. Вам необходимо в шаблоне Товар найти строку
<button class="button calMeGoods" onclick="if($(this).text() == 'Уведомить меня') { document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара &laquo;{GOODS_NAME}&raquo;?' } else { $('.goodsDataForm').submit() } return false;" title="Положить &laquo;{GOODS_NAME}&raquo; в корзину"/ >Уведомить меня</button>
и заменить ее на
<button class="button calMeGoods"/ >Уведомить меня</button>
Далее в конец файла main.js добавьте блок
$(document).ready(function(){
$('.calMeGoods').click(function(){
if($(this).text() == 'Уведомить меня') {
var modInfAll ="";
var nameGood = $('h1').text();
if($('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty').length >= 1 && $('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty select option').length > 1){
$('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty').each(function(){
modInfAll = modInfAll + $(this).find('span').text() + $(this).find('option[value="'+ $(this).find('select').val() +'"]').text()+';';
});
}
document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара "'+ nameGood +'" '+modInfAll+'?'
} else {
$('.goodsDataForm').submit()
}
return false;
})
})

Просмотр сообщенияStasya (17 Апрель 2017 - 13:32) писал:

Здравствуйте. Вам необходимо в шаблоне Товар найти строку
<button class="button calMeGoods" onclick="if($(this).text() == 'Уведомить меня') { document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара &laquo;{GOODS_NAME}&raquo;?' } else { $('.goodsDataForm').submit() } return false;" title="Положить &laquo;{GOODS_NAME}&raquo; в корзину"/ >Уведомить меня</button>
и заменить ее на
<button class="button calMeGoods"/ >Уведомить меня</button>
Далее в конец файла main.js добавьте блок
$(document).ready(function(){
$('.calMeGoods').click(function(){
if($(this).text() == 'Уведомить меня') {
var modInfAll ="";
var nameGood = $('h1').text();
if($('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty').length >= 1 && $('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty select option').length > 1){
$('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty').each(function(){
modInfAll = modInfAll + $(this).find('span').text() + $(this).find('option[value="'+ $(this).find('select').val() +'"]').text()+';';
});
}
document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара "'+ nameGood +'" '+modInfAll+'?'
} else {
$('.goodsDataForm').submit()
}
return false;
})
})

Спасибо, я понял что так должно заработать, но как только начал делать осознал, что мне нужно с первого шага все настраивать.
Можете расписать подробно все действия с первого шага и до последнего?
Это просьба отсылается к первому сообщению в теме, где есть алгоритм для всех шаблонов, кроме Спорт.

#93 Stasya

Stasya

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

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

Отправлено 17 Апрель 2017 - 14:26

Просмотр сообщенияkirussian (05 Апрель 2017 - 10:32) писал:

Считаю, что вопрос актуален (для многих). А лично для меня - в рамках шаблона Спорт.
Здравствуйте. Сейчас у Вас не установлена данная кнопка, поэтому Вам необходимо в шаблоне Товар найти блок
<!-- Добавление товара в Корзину -->
	  <div class="add-to-box f-fix {% IF SETTINGS_GOODS_DONT_PUT_TO_CART_MORE_THAN_AVAILABLE %}add-to-form{% ENDIF %}"  {% IF SETTINGS_GOODS_DONT_PUT_TO_CART_MORE_THAN_AVAILABLE %}{% IF GOODS_MOD_REST_VALUE=0 %}style="display:none;"{% ENDIF %}{% ENDIF %}>
и перед ним вставить код
<div class="f-fix">
  <button class="button calMeGoods"/ >Уведомить меня</button>
</div>
Далее в файле main.js найдите блок
if(modificationRestValue>0) {
		  goodsAvailableTrue.show();
		  goodsAvailableFalse.hide();
		  goodsAvailableAddCart.show();
		  goodsAvailableQty.show();
		// Если товара нет в наличии
		} else {
		  goodsAvailableTrue.hide();
		  goodsAvailableFalse.show();
		  goodsAvailableAddCart.hide();
		  goodsAvailableQty.hide();
		}
и замените его на
if(modificationRestValue>0) {
				  goodsAvailableTrue.show();
				  goodsAvailableFalse.hide();
				  goodsAvailableAddCart.show();
				  goodsAvailableQty.show();
				  $('button.calMeGoods').hide();
				// Если товара нет в наличии
				} else {
				  goodsAvailableTrue.hide();
				  goodsAvailableFalse.show();
				  goodsAvailableAddCart.hide();
				  goodsAvailableQty.hide();
				   $('button.calMeGoods').show();
				}
После этого найдите блок
// Фильтр по ценам
  jQuery(document).ready(function(){
и перед ни вставьте код
$('.goodsDataMainModificationsBlock select').trigger('change');
Затем в самый конец этого файла вставьте код
$(document).ready(function(){
  $('.calMeGoods').click(function(){
		if($(this).text() == 'Уведомить меня') {
		  var modInfAll ="";
		  var nameGood = $('h1').text();
		  if($('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty').length >= 1 && $('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty select option').length > 1){
				$('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty').each(function(){
				  modInfAll = modInfAll + $(this).find('span').text() + $(this).find('option[value="'+ $(this).find('select').val() +'"]').text()+';';
				});
		  }
		  document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара "'+ nameGood +'" '+modInfAll+'?'
		} else {
		  $('.goodsDataForm').submit()
		}
		return false;
  })
})


#94 kirussian

kirussian

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

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

Отправлено 17 Апрель 2017 - 14:43

Просмотр сообщенияStasya (17 Апрель 2017 - 14:26) писал:

Здравствуйте. Сейчас у Вас не установлена данная кнопка, поэтому Вам необходимо в шаблоне Товар найти блок
<!-- Добавление товара в Корзину -->
	 <div class="add-to-box f-fix {% IF SETTINGS_GOODS_DONT_PUT_TO_CART_MORE_THAN_AVAILABLE %}add-to-form{% ENDIF %}" {% IF SETTINGS_GOODS_DONT_PUT_TO_CART_MORE_THAN_AVAILABLE %}{% IF GOODS_MOD_REST_VALUE=0 %}style="display:none;"{% ENDIF %}{% ENDIF %}>
и перед ним вставить код
<div class="f-fix">
<button class="button calMeGoods"/ >Уведомить меня</button>
</div>
Далее в файле main.js найдите блок
if(modificationRestValue>0) {
		 goodsAvailableTrue.show();
		 goodsAvailableFalse.hide();
		 goodsAvailableAddCart.show();
		 goodsAvailableQty.show();
	 // Если товара нет в наличии
	 } else {
		 goodsAvailableTrue.hide();
		 goodsAvailableFalse.show();
		 goodsAvailableAddCart.hide();
		 goodsAvailableQty.hide();
	 }
и замените его на
if(modificationRestValue>0) {
				 goodsAvailableTrue.show();
				 goodsAvailableFalse.hide();
				 goodsAvailableAddCart.show();
				 goodsAvailableQty.show();
				 $('button.calMeGoods').hide();
			 // Если товара нет в наличии
			 } else {
				 goodsAvailableTrue.hide();
				 goodsAvailableFalse.show();
				 goodsAvailableAddCart.hide();
				 goodsAvailableQty.hide();
				 $('button.calMeGoods').show();
			 }
После этого найдите блок
// Фильтр по ценам
jQuery(document).ready(function(){
и перед ни вставьте код
$('.goodsDataMainModificationsBlock select').trigger('change');
Затем в самый конец этого файла вставьте код
$(document).ready(function(){
$('.calMeGoods').click(function(){
	 if($(this).text() == 'Уведомить меня') {
		 var modInfAll ="";
		 var nameGood = $('h1').text();
		 if($('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty').length >= 1 && $('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty select option').length > 1){
			 $('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty').each(function(){
				 modInfAll = modInfAll + $(this).find('span').text() + $(this).find('option[value="'+ $(this).find('select').val() +'"]').text()+';';
			 });
		 }
		 document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара "'+ nameGood +'" '+modInfAll+'?'
	 } else {
		 $('.goodsDataForm').submit()
	 }
	 return false;
})
})

Только-только сделал настройку. Первое впечатление - Стася самый крутой модератор!

#95 Милый Мишка

Милый Мишка

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

  • Пользователи
  • PipPipPipPip
  • 247 сообщений
  • ГородНижний Новгород

Отправлено 17 Апрель 2017 - 15:12

Просмотр сообщенияStasya (17 Апрель 2017 - 13:32) писал:

Здравствуйте. Вам необходимо в шаблоне Товар найти строку
<button class="button calMeGoods" onclick="if($(this).text() == 'Уведомить меня') { document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара &laquo;{GOODS_NAME}&raquo;?' } else { $('.goodsDataForm').submit() } return false;" title="Положить &laquo;{GOODS_NAME}&raquo; в корзину"/ >Уведомить меня</button>
и заменить ее на
<button class="button calMeGoods"/ >Уведомить меня</button>
Далее в конец файла main.js добавьте блок
$(document).ready(function(){
$('.calMeGoods').click(function(){
if($(this).text() == 'Уведомить меня') {
var modInfAll ="";
var nameGood = $('h1').text();
if($('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty').length >= 1 && $('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty select option').length > 1){
$('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty').each(function(){
modInfAll = modInfAll + $(this).find('span').text() + $(this).find('option[value="'+ $(this).find('select').val() +'"]').text()+';';
});
}
document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара "'+ nameGood +'" '+modInfAll+'?'
} else {
$('.goodsDataForm').submit()
}
return false;
})
})

Спасибо, все работает, название модификации в набранном тексте есть, все так, как надо.

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

А сейчас у некоторых товаров корректно работает, а у некоторых нет.
Например, у этого товара выдается первой модификация "размер 74", хотя ее в наличии нет, а другие размеры есть. То есть автоматического переключения на на модификацию в наличии вообще не происходит. http://xn--80apadgdf...od_id=114176348

#96 Милый Мишка

Милый Мишка

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

  • Пользователи
  • PipPipPipPip
  • 247 сообщений
  • ГородНижний Новгород

Отправлено 17 Апрель 2017 - 15:17

Просмотр сообщенияStasya (17 Апрель 2017 - 14:26) писал:

Здравствуйте. Сейчас у Вас не установлена данная кнопка, поэтому Вам необходимо в шаблоне Товар найти блок
<!-- Добавление товара в Корзину -->
	 <div class="add-to-box f-fix {% IF SETTINGS_GOODS_DONT_PUT_TO_CART_MORE_THAN_AVAILABLE %}add-to-form{% ENDIF %}" {% IF SETTINGS_GOODS_DONT_PUT_TO_CART_MORE_THAN_AVAILABLE %}{% IF GOODS_MOD_REST_VALUE=0 %}style="display:none;"{% ENDIF %}{% ENDIF %}>
и перед ним вставить код
<div class="f-fix">
<button class="button calMeGoods"/ >Уведомить меня</button>
</div>
Далее в файле main.js найдите блок
if(modificationRestValue>0) {
		 goodsAvailableTrue.show();
		 goodsAvailableFalse.hide();
		 goodsAvailableAddCart.show();
		 goodsAvailableQty.show();
	 // Если товара нет в наличии
	 } else {
		 goodsAvailableTrue.hide();
		 goodsAvailableFalse.show();
		 goodsAvailableAddCart.hide();
		 goodsAvailableQty.hide();
	 }
и замените его на
if(modificationRestValue>0) {
				 goodsAvailableTrue.show();
				 goodsAvailableFalse.hide();
				 goodsAvailableAddCart.show();
				 goodsAvailableQty.show();
				 $('button.calMeGoods').hide();
			 // Если товара нет в наличии
			 } else {
				 goodsAvailableTrue.hide();
				 goodsAvailableFalse.show();
				 goodsAvailableAddCart.hide();
				 goodsAvailableQty.hide();
				 $('button.calMeGoods').show();
			 }
После этого найдите блок
// Фильтр по ценам
jQuery(document).ready(function(){
и перед ни вставьте код
$('.goodsDataMainModificationsBlock select').trigger('change');
Затем в самый конец этого файла вставьте код
$(document).ready(function(){
$('.calMeGoods').click(function(){
	 if($(this).text() == 'Уведомить меня') {
		 var modInfAll ="";
		 var nameGood = $('h1').text();
		 if($('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty').length >= 1 && $('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty select option').length > 1){
			 $('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty').each(function(){
				 modInfAll = modInfAll + $(this).find('span').text() + $(this).find('option[value="'+ $(this).find('select').val() +'"]').text()+';';
			 });
		 }
		 document.location = '/feedback/?form[feedback_message]=Могли бы Вы уведомить меня о наличии товара "'+ nameGood +'" '+modInfAll+'?'
	 } else {
		 $('.goodsDataForm').submit()
	 }
	 return false;
})
})

Похоже эта ошибка у всех товаров, где нет в наличии размера 74.

Вот еще такой товар http://xn--80apadgdf...od_id=109078579 и http://xn--80apadgdf...od_id=115312457

То есть у них на несколько секунд появляется первая модификация (у нас это меньший размер  62), а потом сразу происходит переключение на 74 размер, которого нет в наличии. Хотя вывод модификации должен работать наоборот - всегда сначала выводить модификацию "в наличии".

#97 Stasya

Stasya

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

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

Отправлено 20 Апрель 2017 - 10:54

Просмотр сообщенияМилый Мишка (17 Апрель 2017 - 15:17) писал:

Похоже эта ошибка у всех товаров, где нет в наличии размера 74.

Вот еще такой товар http://xn--80apadgdf...od_id=109078579 и http://xn--80apadgdf...od_id=115312457

То есть у них на несколько секунд появляется первая модификация (у нас это меньший размер  62), а потом сразу происходит переключение на 74 размер, которого нет в наличии. Хотя вывод модификации должен работать наоборот - всегда сначала выводить модификацию "в наличии".
Здравствуйте. Внесла Вам изменения в код. Проверьте, пожалуйста.

#98 Милый Мишка

Милый Мишка

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

  • Пользователи
  • PipPipPipPip
  • 247 сообщений
  • ГородНижний Новгород

Отправлено 20 Апрель 2017 - 14:30

Просмотр сообщенияStasya (20 Апрель 2017 - 10:54) писал:

Здравствуйте. Внесла Вам изменения в код. Проверьте, пожалуйста.

Спасибо, все работает!

#99 Милый Мишка

Милый Мишка

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

  • Пользователи
  • PipPipPipPip
  • 247 сообщений
  • ГородНижний Новгород

Отправлено 06 Май 2017 - 15:28

Просмотр сообщенияStasya (20 Апрель 2017 - 10:54) писал:

Здравствуйте. Внесла Вам изменения в код. Проверьте, пожалуйста.

Если возможно, посмотрите, пожалуйста, эту тему http://forum.storela...сто-кнопки-в-к/

Уже давно вопрос задан, но ответа нет. Раньше был шаблон движение, такие изменения были внесены. А сейчас для шаблона город никак не можем сделать. Заранее спасибо!

#100 Vaccina

Vaccina

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

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

Отправлено 11 Май 2017 - 06:20

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

Ответила вам в другой теме.





Темы с аналогичным тегами Уведомить меня, Оставить заявку, Нет в наличии, Уведомление о поступлении, Поступление, Наличие, Товар поступил, Товар в наличии, Предварительный заказ, Заказать

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

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