Strona główna forum Wsparcie Konfiguracja Jak stworzyć pole dodawania ilości produktu?

Jak stworzyć pole dodawania ilości produktu?

Wszystko o konfiguracji, możliwościach i ustawieniach...


Posty: 14
Gadu-Gadu: 0

Witajcie, mam pytanie, w jaki sposób zrobić pole dodawania ilości produktów. Dokładniej chodzi o to, że jeśli przeglądamy katalog z produktami, czy to lista czy siatka, istnieje z niej możliwość dodania do koszyka jednej ilości wybranego produktu, klikając dodaj do koszyka.

Jednak ja zrobić aby nie wchodząc do produktu, zostało wyświetlone pole text do którego wpisujemy ilość jaką chcemy zamówić, a następnie klikamy dodaj do koszyka, co pozwoli nam od razu zdefiniować ilość dodanego produktu.

Wiem że realizując zamówienie również tam możemy to zmienić, jednak co jeśi my chcemu akurt w taki sposób ;)

Bardzo prosty przykład to zilustruje:
http://gfdiet.com/home.php?cat=25

jest to co prawda XCart ale jak coś takiego osiągnąć w Magento? Czy jest ktoś w stanie pomóc?

Jak stworzyć pole dodawania ilości produktu?

PostTeraz jest 25 lis 2024, o 08:18
Google

Posty: 427
Lokalizacja: Internet


Posty: 1575
Gadu-Gadu: 0

robiłem coś takiego tutaj: http://shop.citroends.net/
podglądnij sobie kod HTML i porównaj ze swoim, myślę że się domyślisz co i jak zmeniłęm
hosting-magento.pl / magentohosting.eu - szybki hosting Magento
https://www.mage24.pl/ - twój sklep Magento 2 w 5 minut


Posty: 14
Gadu-Gadu: 0

w pliku list.phtml (tylko dla listy) dokleiłem ten kod, co prawda zmienia ilość ale jej nie wysyła:

<div class="product-shop">
<div class="f-fix">
<?php $_productNameStripped = $this->stripTags($_product->getName(), null, true); ?>
<h2 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $_productNameStripped; ?>"><?php echo $_helper->productAttribute($_product, $_product->getName() , 'name'); ?></a></h2>
<?php if($_product->getRatingSummary()): ?>
<?php echo $this->getReviewsSummaryHtml($_product) ?>
<?php endif; ?>
<?php echo $this->getPriceHtml($_product, true) ?>
<?php if($_product->isSaleable()): ?>

<a class="qtyminus" href="#" onclick="if(parseInt($j('qty559').value)&gt;1)$('qty559').value = parseInt($('qty559').value) - 1;return false;">-1</a>
<input class="input-text qty" size="2" type="text" id="qty559" value="1">
<a class="qtyplus" href="#" onclick="$('qty559').value = parseInt($('qty559').value) + 1;return false;">+1</a> [/color]

<p><button type="button" title="<?php echo $this->__('Add to Cart') ?>" class="button btn-cart" onclick="setLocation('<?php echo $this->getAddToCartUrl($_product) ?>qty/' + $j('qty544').value)"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button></p>
<?php else: ?>
<p class="availability out-of-stock"><span><?php echo $this->__('Out of stock') ?></span></p>
<?php endif; ?>
<div class="desc std">
<?php echo $_helper->productAttribute($_product, $_product->getShortDescription(), 'short_description') ?>
<a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $_productNameStripped ?>" class="link-learn"><?php echo $this->__('Learn More') ?></a>
</div>
<ul class="add-to-links">
<?php if ($this->helper('wishlist')->isAllow()) : ?>
<li><a href="<?php echo $this->helper('wishlist')->getAddUrl($_product) ?>" class="link-wishlist"><?php echo $this->__('Add to Wishlist') ?></a></li>
<?php endif; ?>
<?php if($_compareUrl=$this->getAddToCompareUrl($_product)): ?>
<li><span class="separator">|</span> <a href="<?php echo $_compareUrl ?>" class="link-compare"><?php echo $this->__('Add to Compare') ?></a></li>
<?php endif; ?>
</ul>
</div>
</div>

dodaje się produkt, jednak bez podanej ilości. Czy trzeba coś inaczej wpisać? Ps. To jest tylko testowo.. wiem że ID się powinien się powtarzać..


Posty: 1575
Gadu-Gadu: 0

musisz próbować mi działało
hosting-magento.pl / magentohosting.eu - szybki hosting Magento
https://www.mage24.pl/ - twój sklep Magento 2 w 5 minut


Posty: 14
Gadu-Gadu: 0

Znalazłem rozwiązanie ;) oto ono:

<div class="product-shop">
<div class="f-fix">
<?php $_productNameStripped = $this->stripTags($_product->getName(), null, true); ?>
<h2 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $_productNameStripped; ?>"><?php echo $_helper->productAttribute($_product, $_product->getName() , 'name'); ?></a></h2>
<?php if($_product->getRatingSummary()): ?>
<?php echo $this->getReviewsSummaryHtml($_product) ?>
<?php endif; ?>
<?php echo $this->getPriceHtml($_product, true) ?>
<?php if($_product->isSaleable()): ?>



<?php $link = $this->getAddToCartUrl($_product); $URL = explode("/", $link); ?>
<a class="qtyminus" href="#" onclick="if(parseInt($('qty<?php echo $URL[10]; ?>').value)&gt;1)$('qty<?php echo $URL[10];?>').value = parseInt($('qty<?php echo $URL[10];?>').value) - 1;return false;">-1</a>
<input class="input-text qty" size="2" type="text" id="qty<?php echo $URL[10]; ?>" value="1">
<a class="qtyplus" href="#" onclick="$('qty<?php echo $URL[10];?>').value = parseInt($('qty<?php echo $URL[10];?>').value) + 1;return false;">+1</a>

<p><button type="button" title="<?php echo $this->__('Add to Cart') ?>" class="button btn-cart" onclick="setLocation('<?php echo $this->getAddToCartUrl($_product) ?>qty/' + $('qty<?php echo $URL[10]; ?>').value)"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button></p>



<?php else: ?>
<p class="availability out-of-stock"><span><?php echo $this->__('Out of stock') ?></span></p>
<?php endif; ?>
<div class="desc std">
<?php echo $_helper->productAttribute($_product, $_product->getShortDescription(), 'short_description') ?>
<a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $_productNameStripped ?>" class="link-learn"><?php echo $this->__('Learn More') ?></a>
</div>
<ul class="add-to-links">
<?php if ($this->helper('wishlist')->isAllow()) : ?>
<li><a href="<?php echo $this->helper('wishlist')->getAddUrl($_product) ?>" class="link-wishlist"><?php echo $this->__('Add to Wishlist') ?></a></li>
<?php endif; ?>
<?php if($_compareUrl=$this->getAddToCompareUrl($_product)): ?>
<li><span class="separator">|</span> <a href="<?php echo $_compareUrl ?>" class="link-compare"><?php echo $this->__('Add to Compare') ?></a></li>
<?php endif; ?>
</ul>
</div>
</div>

wrzucamy to do pliku /app/design/frontend/*twoja_paczka/*twój_motyw/template/catalog/product/list.phtml

kkkonrad dzięki za pomoc ;)


Posty: 1575
Gadu-Gadu: 0

jak dla mnie trochę okrężna droga ale ważne że działa ;)
hosting-magento.pl / magentohosting.eu - szybki hosting Magento
https://www.mage24.pl/ - twój sklep Magento 2 w 5 minut


Posty: 14
Gadu-Gadu: 0

kkkonrad a w jaki inny sposób mogę podać ID do produktu w miejscy qty+...?


Posty: 1575
Gadu-Gadu: 0

echo $_product->getId()
hosting-magento.pl / magentohosting.eu - szybki hosting Magento
https://www.mage24.pl/ - twój sklep Magento 2 w 5 minut


Posty: 14
Gadu-Gadu: 0

Aby zrealizować zamierzany efekt w odpowiednich miejscach:
/app/design/frontend/*twoja_paczka/*twój_motyw/template/catalog/product/list.phtml

wklejamy następujący kod:

<a class="qtyminus" href="#" onclick="if(parseInt($('qty<?php echo $_product->getId() ?>').value)&gt;1)$('qty<?php echo $_product->getId() ?>').value = parseInt($('qty<?php echo $_product->getId() ?>').value) - 1;return false;">-1</a>
<input class="input-text qty" size="2" type="text" id="qty<?php echo $_product->getId() ?>" value="1">
<a class="qtyplus" href="#" onclick="$('qty<?php echo $_product->getId() ?>').value = parseInt($('qty<?php echo $_product->getId() ?>').value) + 1;return false;">+1</a>

;)


Posty: 1575
Gadu-Gadu: 0

o teraz bardzo ładnie :)
hosting-magento.pl / magentohosting.eu - szybki hosting Magento
https://www.mage24.pl/ - twój sklep Magento 2 w 5 minut


Powrót do Konfiguracja