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


Как Убрать Кнопку "В Корзину" ?


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

#1 romangreen

romangreen

    Новичок

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

Отправлено 12 Октябрь 2011 - 06:58

Здравствуйте!
Подскажите, как убрать кнопку "В корзину" и цену на товар ("10 рублей") на всех товарах в одном из разделов каталога товаров, при этом оставить возможность писать текст в этой ячейке?
Остальные разделы должны содержать кнопку и цену.

это есть сейчас
01.jpg

так надо сделать
02.jpg

#2 Vaccina

Vaccina

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

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

Отправлено 12 Октябрь 2011 - 23:09

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

А именно в шаблоне "Товар" найти

<!-- По этому значению производится заказ товара -->
					  <input type="hidden" name="form[goods_mod_id]" value="{GOODS_MOD_ID}" class="goodsDataMainModificationId" />
					  
					  <!-- Цена сейчас --> 
					  <span class="goodsDataMainModificationPriceNow" title="Цена сейчас">
						 {GOODS_MOD_PRICE_NOW | money_format}
					  </span>
					  
					  <!-- Старая цена --> 
					  <span class="goodsDataMainModificationPriceOld lineThrough" title="Старая цена">
			  			  <!-- Если на товар действует скидка --> 
						{% IF GOODS_MOD_PRICE_NOW_WITHOUT_DISCOUNT>GOODS_MOD_PRICE_NOW %}
						  {GOODS_MOD_PRICE_NOW_WITHOUT_DISCOUNT | money_format}
			  			  <!-- Если старая цена была больше новой --> 
						{% ELSEIF GOODS_MOD_PRICE_OLD>GOODS_MOD_PRICE_NOW %}
			  				{GOODS_MOD_PRICE_OLD | money_format}
			  			  {% ENDIF %}
			  			</span>

					  <!-- Доступность товара --> 
					  <div class="goodsDataMainModificationAvailable">
						  <div rel="true" class="available-true" {% IF GOODS_MOD_REST_VALUE=0 %}style="display:none;"{% ENDIF %}>Товар есть в наличии</div>
						  <div rel="false" class="available-false" {% IF GOODS_MOD_REST_VALUE>0 %}style="display:none;"{% ENDIF %}>Товара нет в наличии</div>
					  </div>

заменить на
{% IF GOODS_MOD_REST_VALUE>0 %}
<!-- По этому значению производится заказ товара -->
					  <input type="hidden" name="form[goods_mod_id]" value="{GOODS_MOD_ID}" class="goodsDataMainModificationId" />
					  
					  <!-- Цена сейчас --> 
					  <span class="goodsDataMainModificationPriceNow" title="Цена сейчас">
						 {GOODS_MOD_PRICE_NOW | money_format}
					  </span>
					  
					  <!-- Старая цена --> 
					  <span class="goodsDataMainModificationPriceOld lineThrough" title="Старая цена">
			  			  <!-- Если на товар действует скидка --> 
						{% IF GOODS_MOD_PRICE_NOW_WITHOUT_DISCOUNT>GOODS_MOD_PRICE_NOW %}
						  {GOODS_MOD_PRICE_NOW_WITHOUT_DISCOUNT | money_format}
			  			  <!-- Если старая цена была больше новой --> 
						{% ELSEIF GOODS_MOD_PRICE_OLD>GOODS_MOD_PRICE_NOW %}
			  				{GOODS_MOD_PRICE_OLD | money_format}
			  			  {% ENDIF %}
			  			</span>

					  <!-- Доступность товара --> 
					  <div class="goodsDataMainModificationAvailable">
						  <div rel="true" class="available-true" {% IF GOODS_MOD_REST_VALUE=0 %}style="display:none;"{% ENDIF %}>Товар есть в наличии</div>
						  <div rel="false" class="available-false" {% IF GOODS_MOD_REST_VALUE>0 %}style="display:none;"{% ENDIF %}>Товара нет в наличии</div>
					  </div>
{% ENDIF %}

далее найти

<a class="more-link"  onclick="$('.goodsDataForm').submit(); return false;" title="Положить &laquo;{GOODS_NAME}&raquo; в корзину" href="#">В корзину</a><br /><br />
	
					<!-- Если в тарифном плане подключен модуль сравнения товаров -->
					{% IF TARIFF_FEATURE_GOODS_COMPARE %}
					  <!-- Если не выключен модуль сравнения товаров, то покажем кнопку сравнения товаров -->
					  {% IFNOT SETTINGS_COMPARE_DISABLE %}
						<a class="more-link goodsDataCompareButton add" {% IF GOODS_MOD_IS_HAS_IN_COMPARE_LIST %}style="display:none;"{% ENDIF %} rel="{COMPARE_ADD_URL}?return_to={CURRENT_URL | urlencode}" title="Добавить &laquo;{GOODS_NAME}&raquo; к списку сравнения с другими товарами" href="#" >Cравнить</a>
						<a class="more-link goodsDataCompareButton delete" {% IFNOT GOODS_MOD_IS_HAS_IN_COMPARE_LIST %}style="display:none;"{% ENDIF %} rel="{COMPARE_DELETE_URL}?return_to={CURRENT_URL | urlencode}" title="Убрать &laquo;{GOODS_NAME}&raquo; из списка сравнения с другими товарами" href="#" >Не сравнивать</a>
					  {% ENDIF %}
					{% ENDIF %}

заменить на
{% IF GOODS_MOD_REST_VALUE>0 %}
<a class="more-link"  onclick="$('.goodsDataForm').submit(); return false;" title="Положить &laquo;{GOODS_NAME}&raquo; в корзину" href="#">В корзину</a><br /><br />
	
					<!-- Если в тарифном плане подключен модуль сравнения товаров -->
					{% IF TARIFF_FEATURE_GOODS_COMPARE %}
					  <!-- Если не выключен модуль сравнения товаров, то покажем кнопку сравнения товаров -->
					  {% IFNOT SETTINGS_COMPARE_DISABLE %}
						<a class="more-link goodsDataCompareButton add" {% IF GOODS_MOD_IS_HAS_IN_COMPARE_LIST %}style="display:none;"{% ENDIF %} rel="{COMPARE_ADD_URL}?return_to={CURRENT_URL | urlencode}" title="Добавить &laquo;{GOODS_NAME}&raquo; к списку сравнения с другими товарами" href="#" >Cравнить</a>
						<a class="more-link goodsDataCompareButton delete" {% IFNOT GOODS_MOD_IS_HAS_IN_COMPARE_LIST %}style="display:none;"{% ENDIF %} rel="{COMPARE_DELETE_URL}?return_to={CURRENT_URL | urlencode}" title="Убрать &laquo;{GOODS_NAME}&raquo; из списка сравнения с другими товарами" href="#" >Не сравнивать</a>
					  {% ENDIF %}
					{% ENDIF %}
{% ENDIF %}


#3 tehniks

tehniks

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

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

Отправлено 19 Декабрь 2011 - 15:15

Извините, честно пытался разобраться самостоятельно, но не получается. Ситуация такая. При условии отсутствия товара, у меня убирается корзина, выводится цена, надпись "товара нет в наличии" и я пытался тут же добавить форму обратной связи. Не получается следующее - в форме обратной связи присутствует кнопка "Отправить" при нажатии которой тут же отрабатывается сценарий, как будто я пытаюсь добавить в корзину отсутствующий товар, вот от этого я и не могу избавиться.
Спасибо.

#4 Vaccina

Vaccina

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

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

Отправлено 19 Декабрь 2011 - 18:39

Пожалуйста сообщите ваш адрес магазина.

#5 tehniks

tehniks

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

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

Отправлено 19 Декабрь 2011 - 19:23

Вот эта страничка

http://senetclub.ru/...нанза?from=MDNk

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

#6 Vaccina

Vaccina

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

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

Отправлено 20 Декабрь 2011 - 18:49

Попробуйте сделать следующее - в шаблоне "Товар" найти

<div style="padding:5px 20px 15px 20px; text-align:center;">
<input type="submit" style="cursor:pointer; width:200px; height:35px; font:15px tahoma;" value="Отправить">
</div>

и заменить на

<div style="padding:5px 20px 15px 20px; text-align:center;">
<input class="cart_block" type="submit" style="cursor:pointer; width:200px; height:35px; font:15px tahoma;" value="Отправить">
</div>

далее в файле main.js найти

$('.goodsDataForm, .goodsToCartFromCompareForm, .goodsListForm').submit(function(){

и заменить на

$('.goodsDataForm input:not(.cart_block), .goodsToCartFromCompareForm, .goodsListForm').submit(function(){

далее если будет работать не так как вам нужно и потребуется изменить action формы (это путь куда нужно отправить данные) то можно добавить в файл main.js новое событие перед строкой

$('.goodsDataForm input:not(.cart_block), .goodsToCartFromCompareForm, .goodsListForm').submit(function(){

например так

$('.goodsDataForm input.cart_block').submit(function(){
 $(this).closest('form').attr('action', 'тут указываем нужный url').submit();
});


#7 tehniks

tehniks

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

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

Отправлено 21 Декабрь 2011 - 01:07

Пока не получается. Если это

$('.goodsDataForm, .goodsToCartFromCompareForm, .goodsListForm').submit(function(){

заменить на это

$('.goodsDataForm input:not(.cart_block), .goodsToCartFromCompareForm, .goodsListForm').submit(function(){

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

$('.goodsDataForm input.cart_block').submit(function(){
$(this).closest('form').attr('action', 'тут указываем нужный url').submit();
});
Может ещё попробуем что нибудь? всё равно как будет отправляться сообщение, можно даже через вашу форму обратной связи, главное что бы это происходило со страницы товара.

#8 Vaccina

Vaccina

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

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

Отправлено 21 Декабрь 2011 - 19:08

Попробуйте использовать

$('.goodsDataForm input.cart_block').submit(function(){
$(this).closest('form').attr('action', 'тут указываем нужный url').submit();
});

а в качестве "тут указываем нужный url" вставить ссылку на вашу форму обратной связи http://site.ru/feedback

#9 tehniks

tehniks

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

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

Отправлено 21 Декабрь 2011 - 20:39

Простите, но мы это уже проходили...
Ладно поставлю пока ссылку на страницу с формой обратной связи. Но вопрос остаётся открытым, как на странице товара заставить работать любую кнопку с функцией отправки данных submit(function()и что бы при этом не отрабатывалась корзина и связанные с ней события. Спасибо за попытку помочь, может сам разберусь когда-нибудь.

#10 sorcessor

sorcessor

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

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

Отправлено 12 Декабрь 2013 - 16:37

Коллеги, добрый день, хочу вписаться по теме. Появилась следующая ситуация - компания производитель продаваемого товара с 1го января вводит запрет на продажу их товаров через интернет магазины, а тем у кого при этом есть розничные точки настоятельно рекомендует по ее товарам убрать кнопку купить с сайта (оставить как рекламку в двух словах). Отсюда возникает вопрос - как убрать кнопку "купить" для товаров с характеристикой производитель "такой то" или как убрать кнопку "купить" для товаров с названием производителя в названии товара?

#11 Сake

Сake

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

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

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

Скрыть кнопку покупки можно через javascript основываясь на названии товара. Добавьте в шаблон "Товар" код

<script>
$(function() {
  if($('.page-headline h1').text().indexOf('Husqvarna') !== -1) {
	$('.goodsDataFormSubmitButton .more-link:eq(0)').hide();
  }
});
</script>


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

<script>
$(function() {
  if($('.page-headline h1').text().indexOf('Husqvarna') !== -1) {
	$('.goodsDataFormSubmitButton .more-link').hide();
  }
});
</script>


#12 sorcessor

sorcessor

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

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

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

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

Скрыть кнопку покупки можно через javascript основываясь на названии товара. Добавьте в шаблон "Товар" код

<script>
$(function() {
if($('.page-headline h1').text().indexOf('Husqvarna') !== -1) {
$('.goodsDataFormSubmitButton .more-link:eq(0)').hide();
}
});
</script>

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

<script>
$(function() {
if($('.page-headline h1').text().indexOf('Husqvarna') !== -1) {
$('.goodsDataFormSubmitButton .more-link').hide();
}
});
</script>

Коллега, Вы настоящий Человек с большой буквы Ч! Быстро, оперативно и в точку, все работает идеально. Проверил, закомментил код, с 1го января вся эта шляпа, пока поработаем по старинке. Спасибо Вам огромное!




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

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