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

Удалить товар из корзины и ссылка на сам товар


Recommended Posts

<?php
$products = $this->cart->getProducts();
print_r ($products);
?>
В футере делаю вывод товаров, которые в корзине. Но тут нет $product['href']; и $product['remove'];

Array
(
[65:YToxOntpOjIyNztzOjI6IjE3Ijt9] => Array
(
[key] => 65:YToxOntpOjIyNztzOjI6IjE3Ijt9
[product_id] => 65
[name] => Товар 1
[model] => 0000001
[shipping] => 1
[image] => data/goods_test/blaiz2.png
[option] => Array
(
[0] => Array
(
[product_option_id] => 227
[product_option_value_id] => 17
[option_id] => 13
[option_value_id] => 49
[name] => Размер
[option_value] => 40
[type] => select
[quantity] => 0
[subtract] => 0
[price] => 0.0000
[price_prefix] => +
[points] => 0
[points_prefix] => +
[weight] => 0.00000000
[weight_prefix] => +
)

)

[download] => Array
(
)

[quantity] => 1
[minimum] => 1
[subtract] => 1
[stock] => 1
[price] => 500
[total] => 500
[reward] => 0
[points] => 0
[tax_class_id] => 0
[weight] => 0
[weight_class_id] => 1
[length] => 0.00000000
[width] => 0.00000000
[height] => 0.00000000
[length_class_id] => 1
)

[66:YToxOntpOjIyODtzOjI6IjE4Ijt9] => Array
(
[key] => 66:YToxOntpOjIyODtzOjI6IjE4Ijt9
[product_id] => 66
[name] => Товар 2
[model] => 0000002
[shipping] => 1
[image] => data/goods_test/dress4.png
[option] => Array
(
[0] => Array
(
[product_option_id] => 228
[product_option_value_id] => 18
[option_id] => 13
[option_value_id] => 50
[name] => Размер
[option_value] => 42
[type] => select
[quantity] => 0
[subtract] => 0
[price] => 0.0000
[price_prefix] => +
[points] => 0
[points_prefix] => +
[weight] => 0.00000000
[weight_prefix] => +
)

)

[download] => Array
(
)

[quantity] => 1
[minimum] => 1
[subtract] => 0
[stock] => 1
[price] => 600
[total] => 600
[reward] => 0
[points] => 0
[tax_class_id] => 0
[weight] => 0
[weight_class_id] => 1
[length] => 0.00000000
[width] => 0.00000000
[height] => 0.00000000
[length_class_id] => 1
)

)


Подскажите куда копать?

Надіслати
Поділитися на інших сайтах


$product['href'] можете прописать под:


'href'     => $this->url->link('product/product', 'product_id=' . $product['product_id'])

а вот функция javascript для удаления по онклику:

function removeCart(key) {
	$.ajax({
		url: 'index.php?route=checkout/cart',
		type: 'get',
		data: 'remove=' + key,
		dataType: 'html',
		success: function(json) {
		
		window.location='index.php?route=checkout/cart';// или Ваша страница для перезагрузки			
		}
	});
}

то есть вешаете какой то рисунок\кнопку\ссылку на событие: 

<a onclick="removeCart('<?php echo $product['key']; ?>');" >

Ну и про всяк случай, гляньте, есть ли по адресу контроллера checkout/cart : код обработки:

if (isset($this->request->get['remove'])) {
	$this->cart->remove($this->request->get['remove']);
Надіслати
Поділитися на інших сайтах

Спасибо огромное! Отлично, все супер! Код обработки глянул, начинаю понимать что откуда берется.

 

Когда выполняю удаление товара, можно ли в ajax в success вызвать как-то $this->cart->update для обновления корзины, чтобы не перезагружать страницу? Или это идет от контроллера checkout/cart и нифига не сработает, т.к. там вконце самом ридирект.

// Update
if (!empty($this->request->post['quantity'])) {
	foreach ($this->request->post['quantity'] as $key => $value) {
		$this->cart->update($key, $value);
	}
	
	unset($this->session->data['shipping_method']);
	unset($this->session->data['shipping_methods']);
	unset($this->session->data['payment_method']);
	unset($this->session->data['payment_methods']); 
	unset($this->session->data['reward']);
	
	$this->redirect($this->url->link('checkout/cart'));  			
}
Надіслати
Поділитися на інших сайтах


При success вы можете поставить любое условие, я делал на перезагрузку, так как лень было писать много кода на обновление и джейсон...

Если вы например хотите, что бы просто в "шапке" миникорзины тотал_айтемс менялось, то вместо редиректа поставьте такой код:

$('#cart-total').html(json['total']);

ну и дальше уже зависит от фантазии...

Надіслати
Поділитися на інших сайтах

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

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

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

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

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

Вхід

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

Вхід зараз

×
×
  • Створити...

Important Information

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