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

Добавление в корзину из списка на AJAX [Доработка]


SVLogic

Recommended Posts

Ковырял вот тут версию 0.0.7, попросили сделать добавление в корзину на ajax из списка продукции.

Вот собсно выкладываю решение (не знаю только было уже или нет, ничего не нашел):

открываем /catalog/view/javascript/jquery/ajax_add.js и дабы ничего из работающего нигде не сломалось, добавляем новую функцию в этот файл

function atc(id) {		$.ajax({			type: 'post',			url: 'index.php?route=module/cart/callback',			dataType: 'html',			data: $('#'+id+' :input'),			success: function (html) {				$('#module_cart .middle').html(html);			},			complete: function () {				var image = $('#image_'+id).offset();				var cart  = $('#module_cart').offset();				$('#image_'+id).before('<img src="' + $('#image_'+id).attr('src') + '" id="temp" style="position: absolute; top: ' + image.top + 'px; left: ' + image.left + 'px;" />');				params = {					top : cart.top + 'px',					left : cart.left + 'px',					opacity : 0.0,					width : $('#module_cart').width(),					heigth : $('#module_cart').height()				};				$('#temp').animate(params, 'slow', false, function () {					$('#temp').remove();				});			}		});}

Далее открываем /catalog/controller/product/category.php

ищем в нем примерно следующее:

'name'    => $result['name'],						'model'   => $result['model'],            			'rating'  => $rating,
и добавляем перед этим

'id'    => $result['product_id'],

Открываем /catalog/view/theme/default/template/product/category.tpl

ищем где выводится изображение товара

<img src="<?php echo $products[$i]['thumb']; ?>" title="<?php echo $products[$i]['name']; ?>" alt="<?php echo $products[$i]['name']; ?>" />
и добавляем в тег

id="image_product<?=$i?>"
находим

<?php if ($display_price) { ?>
ниже добавляем

<form action="/index.php?route=checkout/cart" method="post" enctype="multipart/form-data" id="product<?=$i?>">
перед закрытием условия <?php if ($display_price) { ?>

<?php } ?>
добавляем

<input type="hidden" name="quantity" value="1" />                          <input type="hidden" name="product_id" value="<?=$products[$i]['id']?>" />                        </form>
меняем href ссылки добавления в корзину на onclick и добавляем id

onclick="atc('product<?=$i?>')" id="add_to_cart1"

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

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


  • 2 weeks later...

Добавление в корзину последних товаров на главной странице

открываем catalogviewthemedefaulttemplatemodulelatest_home.tpl

ищем примерно следующее

<a href="<?php echo str_replace('&', '&', $products[$j]['href']); ?>"><img src="<?php echo $products[$j]['thumb']; ?>" title="<?php echo $products[$j]['name']; ?>" alt="<?php echo $products[$j]['name']; ?>" /></a>
в тег <img> добавляем следующее:
id="image_product<?=$j+999?>"

ищем

<?php if ($display_price) { ?>
ниже вставляем

<form action="/index.php?route=checkout/cart" method="post" enctype="multipart/form-data" id="product<?=$j+999?>">

ищем

<a class="button_add_small" href="<?php echo $products[$j]['add']; ?>" title="<?php echo $button_add_to_cart; ?>" > </a>
заменяем на

<a class="button_add_small" onclick="atc('product<?=$j+999?>')" id="add_to_cart1" title="Добавить в корзину"> </a>

ищем закрывающую скобку

<?php } ?>
элемента

<?php if ($display_price) { ?>
перед скобкой вставляем

<input type="hidden" name="quantity" value="1" />                          <input type="hidden" name="product_id" value="<?=$products[$j]['product_id']?>" />                        </form>
Надіслати
Поділитися на інших сайтах


  • 4 months later...

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

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

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

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

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

Вхід

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

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

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

Important Information

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