Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Кнопка "в корзину" заменяется на "уже в корзине"


Recommended Posts

Сделал такую фишку. На странице товара когда покупатель кликает "в корзину" кнопка заменяется аналогичной с надписью "уже в корзине" и по следующему клику на нее перенаправляет покупателя на страницу Корзины (... ну мне так нужно)

post-3928-0-23484300-1326289094_thumb.jpg

Но никак не получается сделать то же на странице просмотра товара списком/витриной. Версия ocStore v1.0.1.

Вот как я сделал для страницы товара:

в файле catalog/controller/product/product.php после строки где-то 245 после кода строчки ниже

$this->data['options'] = array();

добавил

//jk update for add to cart button
$this->data['tovar_is'] = '';
foreach ($this->session->data['cart'] as $key => $value) {
			 $product = explode(':', $key);

   if ($product[0] == $this->request->get['product_id']) {
	   $this->data['tovar_is'] = 1;
	   }
}
//end of jk update

дальше в файле catalog/view/theme/default/template/product/product.tpl строку ниже

 <a id="button-cart" class="button"><span><?php echo $button_cart; ?></span></a></div>

заменил на

<?php if (!$tovar_is) { ?>
 <a id="button-cart" class="button"><span><?php echo $button_cart; ?></span></a></div>
<?php } else {?>
 <a href="index.php?route=checkout/cart" class="button"><span>Already in Basket!</span></a></div>
<?php } ?>

в том же файле ниже, в скриптах, после строки

$('.attention').fadeIn('slow');

вставил строчку:

$("#button-cart").after('<a href="index.php?route=checkout/cart" class="button"><span>Already in Basket!</span></a>').remove();

Вот как-то так, но в категориях не могу никак разобраться как так что бы после нажатия "в корзину" менялось аналогично. ПОМОГИТЕ кто нибудь.

  • +1 2
Надіслати
Поділитися на інших сайтах


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

в файле catalog/controller/product/category.php

код:

$this->data['products'][] = array(
	 'product_id'  => $result['product_id'],
	 'thumb'	   => $image,
	 'name'		=> $result['name'],
	 'description' => $descr_plaintext,
	 'price'	   => $price,
	 'special'	 => $special,
	 'tax'		 => $tax,
	 'rating'	  => $result['rating'],
	 'reviews'	 => sprintf($this->language->get('text_reviews'), (int)$result['reviews']),
	 'href'		=> $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id']));

заменить кодом:

	//alexjk update for add to cart button
	$tovar_is='';
	foreach ($this->session->data['cart'] as $key => $value) {
	 $product = explode(':', $key);
	
	 if ($product[0] == $result['product_id']) {
	  $tovar_is = 1;
	 }
	}
  
	$this->data['products'][] = array(
	 'product_id'  => $result['product_id'],
	 'thumb'	   => $image,
	 'name'		=> $result['name'],
	 'description' => $descr_plaintext,
	 'price'	   => $price,
	 'special'	 => $special,
	 'tax'		 => $tax,
	 'rating'	  => $result['rating'],
	 'reviews'	 => sprintf($this->language->get('text_reviews'), (int)$result['reviews']),
	 'href'		=> $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id']),
	 'tovar_is'	=> $tovar_is
	);
	//end of alexjk update

Дальше нужно в файле catalog/view/javascript/common.js

в функцие function addToCart(product_id) после строчки $('.attention').fadeIn('slow');

вставить строчку

$('#'+ product_id +'').after('<a href="index.php?route=checkout/cart" class="button"><span>Already in Busket!</span></a>').remove();

И наконец в файле catalog/view/theme/default/template/product/category.tpl код

	  <a onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button"><span><?php echo $button_cart; ?></span></a></div>

заменить на

  <?php if ($product['tovar_is']!=1) { ?>
	  <a id="<?php echo $product['product_id']; ?>" onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button"><span><?php echo $button_cart; ?></span></a>
   <?php } else {?>
   <a href="index.php?route=checkout/cart" class="button"><span>Already in Basket!</span></a>
   <?php } ?>
</div>

Ну вот и все вроде. В поиске делается все точно так же как и в категориях.

  • +1 2
Надіслати
Поділитися на інших сайтах


  • 11 months later...
  • 7 months later...
  • 1 year later...
  • 1 year later...

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.