Jump to content

Integracja własnego modułu z koszykiem Presty


Recommended Posts

Witam.

 

Piszę własny moduł do presty, którego zadaniem będzie wybór odpowiedniego produktu przy pomocy formularza. Chciałbym aby osoba, która dokonała wyboru, miała możliwość dodania swojego wyboru do koszyka. Dlatego mam do was pytanie. Jak się do tego zabrać. Albo może jest coś na te temat w dokumentacji, a ja to przeoczyłem? Dziękuję ;)

Edited by justdanek (see edit history)
Link to comment
Share on other sites

blockcart to tylko moduł, który wyświetla zawartość koszyka (który jest funkcją presty, nie modułem).

jeżeli chcesz dodawać produkty do koszyka (z animacją itp) wystarczy, że zastosujesz tą samą metodę którą wykorzystuje zwykła lista produktów, to w z upełności powinno wystarczyć.


chyba, że mówiąc o formularzu mówisz o jakimś rozbudowanym systemie dodawania przedmiotów do koszyka. Wszystko zależy od tego ;)

Link to comment
Share on other sites

nie, absolutnie.

 

jeżeli chcesz dodać produkt do koszyka po prostu skorzystaj z defaultowej funkcji, tj.

<a class="exclusive ajax_add_to_cart_button" rel="ajax_id_product_{$product.id_product}" href="{$link->getPageLink('cart')|escape:'html'}?qty=1&id_product={$product.id_product}&token={$static_token}&add">{l s='Add to cart'}</a>
Link to comment
Share on other sites

W zasadzie jeśli robisz moduły to zakładam że masz pojęcie o tym co robisz i jeśli chcesz pracować z PrestaShop to oprócz dokumentacji mógłbyś także po prostu przeanalizować kod.

 

Proponuje zacząć od classes/Cart.php oraz controlers/front/CartController.php

 

PrestaShop jest elastycznym i miłym w rozbudowywaniu oprogramowaniem i nie ma problemu z tworzeniem dedykowanych formularzy personalizacji dla produktów - po prostu trzeba przeanalizować bebechy. 

Link to comment
Share on other sites

Do problemu podszedłem trochę okrężną drogą. Bo poprzez formularz dodaje produkt do bazy. Jest on już widoczny w bazie oraz w panelu administracyjnym. Ale nie wiem dlaczego nie chce się wyświetlić na głównej stronie sklepu. Zabawne jest to, że kiedy wyedytuje ten produkt w panelu, a następnie nic zmieniając zapisze to wtedy dopiero pojawia się na głównej stronie na liście "Produkty polecane". Co może być nie tak?

Link to comment
Share on other sites

W momencie kiedy już mam stworzony gotowy produkt przez formularz to w jaki sposób mogę go przekazać do koszyka bezpośrednio z formularza przy pomocy funkcji o której pisze Vekia? Zależy mi na takim rozwiązaniu aby klient po przeczytaniu podsumowania wyboru produktu mógł go tym przyciskiem dodać do koszyka. Obecnie dostaję komunikat, że produkt jest już niedostępny w sklepie co nie jest prawdą ponieważ klient tworzy taką ilość produktu jaką chce zamówić przez formularz.

 

Edit:

 

Grzebałem trochę w kodzie i znalazłem funkcję odpowiadającą za pobranie odpowiedniego id produktu. Całość jest w CartController.php w funkcji init(). Mianowicie:

$this->id_product = (int)Tools::getValue('id_product', null);

Gdy na sztywno podaję id równego na przykład 10 to produkt ląduje w koszyku. Problem w tym jak sprawić by wyszukiwał produkt niedawno stworzony przez klienta. 

Edited by justdanek (see edit history)
Link to comment
Share on other sites

×
×
  • Create New...