Jump to content

Aanpassen Product-list


Recommended Posts

Goedendag,

 

Sinds kort zijn we begonnen met een prestashop winkel. Deze staat nog niet online, dus ik kan geen URL meesturen. Er leven echter nog een paar vragen.

  1. We willen graag de box met "aantal" toevoegen aan de product-list. Het kopieren van de betreffende code uit product.tpl naar product-list.tpl geeft niet het gewenste resultaat. Er wordt niets zichtbaar. (Ik heb ook de .css aangepast.)
  2. Hetzelfde geldt voor de prijs "zonder korting". Ook deze kan niet eenvoudig in product-list.tpl toegevoegd worden.

Kan iemand hier mij helpen?

:blink: Waarom kunnen deze items niet in het .tpl bestand geplakt worden? :unsure:

 

Bij voorbaat dank voor de moeite.

 

Peter de Putter

Link to comment
Share on other sites

Goedendag,

 

Sinds kort zijn we begonnen met een prestashop winkel. Deze staat nog niet online, dus ik kan geen URL meesturen. Er leven echter nog een paar vragen.

  1. We willen graag de box met "aantal" toevoegen aan de product-list. Het kopieren van de betreffende code uit product.tpl naar product-list.tpl geeft niet het gewenste resultaat. Er wordt niets zichtbaar. (Ik heb ook de .css aangepast.)
  2. Hetzelfde geldt voor de prijs "zonder korting". Ook deze kan niet eenvoudig in product-list.tpl toegevoegd worden.

Kan iemand hier mij helpen?

:blink: Waarom kunnen deze items niet in het .tpl bestand geplakt worden? :unsure:

 

Bij voorbaat dank voor de moeite.

 

Peter de Putter

Allereerst, welke versie van Prestashop ga je gebruiken (Zie http://www.prestasho...um-regels-tips/)?

 

Zomaar variabele waardes uit de ene tpl naar de andere tpl verplaatsen/plakken gaat niet zonder het bijbehorende php-script , welke de variabele een waarde toekent in het smarty object, bij te werken.

Dit vergt wel enige kennis van php scripting

 

Edit: De box met aantal word trouwens helemaal lastig ivm checks op availibilty en minimal_quantity. bovendien neemt de add to cart button in de product_list weergave de ingevulde waarde niet mee. Daarvoor is weer een aanpassing extra nodig.

Edited by scorpionsworld (see edit history)
  • Like 1
Link to comment
Share on other sites

Dank voor de snelle reactie!

Het gaat om Prestashop v 1.4.8.2.

 

Enige kennis van PHP heb ik wel. In de map /classes staat wel Product.php maar geen product-list.php, waar haalt de Product-list de variabelen vandaan??

 

Bij voorbaat dank,

Peter

Link to comment
Share on other sites

Ok, ik lees nu dat het aantal lastig wordt vanwege het toevoegen aan de winkelwagen. Neem even aan, dat availability en minimum quantity geen probleem vormen... Het ingevulde aantal zou toch wel uit te lezen moeten zijn, zonder allerlei ingewikkelde javascripts?

De smarty taal is redelijk te volgen. Dus daar kan ik wel aan sleutelen.

 

Groter probleem, is dat ik nergens een catalog.php vind. Kun je nog een kleine hint geven?

Link to comment
Share on other sites

Ok, ik lees nu dat het aantal lastig wordt vanwege het toevoegen aan de winkelwagen. Neem even aan, dat availability en minimum quantity geen probleem vormen... Het ingevulde aantal zou toch wel uit te lezen moeten zijn, zonder allerlei ingewikkelde javascripts?

De smarty taal is redelijk te volgen. Dus daar kan ik wel aan sleutelen.

 

Groter probleem, is dat ik nergens een catalog.php vind. Kun je nog een kleine hint geven?

excuus. Ik was te snel met beantwoorden.

Ik heb versie 1.4.8.2 even gedownload en even de juiste file opgezocht.

Dit moet zijn /controllers/CategoryController.php. Overigens word de products variabele al aangemaakt als array (ipv object zoals in de product view). Een paar kleine aanpassing in de .tpl zouden al voldoende moeten zijn.

Voor wat betreft de aantal (ofwel quantity_wanted), indien je gebruik maakt van de ajax cart dient de /modules/blockcart/ajax-cart.js javascript aangepast te worden en het id van het invulveld (bijv. id="quantity_wanted_{$product.id_product|intval}".

  • Like 1
Link to comment
Share on other sites

Hallo Scorpionsworld,

 

Een weekje later denk ik dat ik iets te overmoedig ben geweest. Het lukt me met geen mogelijkheid om bovenstaande te realiseren.

Ik heb een en ander aan code uit product.tpl naar product-list.tpl geplakt maar nu krijg ik de volgende foutmelding:

Fatal error: Call to a member function getPrice() on a non-object in (.dirname.) file

product-list.tpl.php on line 169

 

Het lijkt erop, dat de functies uit product.php niet beschikbaar zijn in product-list.tpl. Hoe zorg ik ervoor dat die functies wel beschikbaar komen??

 

Ik zie twee mogelijkheden:

- De verwijzing naar categoryController.php veranderen in een verwijzing naar ProductController.php en de functies uit CategoryController.php toevoegen in productController.php.

- De code uit ProductController.php toevoegen in CategoryController.php

 

Kunnen jullie hierin meedenken?

Of raak ik zo veel te ver van de standaard Prestashop inrichting vandaan??

 

Groet en bij voorbaat weer mijn dank.

Peter

Link to comment
Share on other sites

ajax-cart from theme_modules.js.txt

 

Hoi,

Ik blijf nog even doorvragen... Want, na klikken op "add to cart" verdwijnt het product en wordt niet toegevoegd in de winkelwagen. :( Ik heb de wijzigingen weer ongedaan gemaakt.

 

De product-list.tpl lijkt perfect. Alles is zichtbaar!

Echter, de ajax-cart.js die in je zip-bestand zit, is op diverse plaatsen afwijkend van de versie die in onze "/themes/[MIJN THEMA]/modules/blockcart2/" staat. Op het eerste gezicht zijn er veel meer afwijkingen dan ik kan begrijpen.

 

Zie je kans om aan te geven wat specifiek voor de wijziging van het "quantity wanted" bedoeld is? Ik zal in ieder geval mijn ajax-cart.js (uit "/themes/[MIJN THEMA]/modules/blockcart2/" meesturen bij deze post. (met .txt als extensie toegevoegd.... Het bestand heet gewoon: ajax-cart.js)

 

Bij voorbaat mijn hartelijke dank,

Peter

Link to comment
Share on other sites

ajax-cart from theme_modules.js.txt

 

Hoi,

Ik blijf nog even doorvragen... Want, na klikken op "add to cart" verdwijnt het product en wordt niet toegevoegd in de winkelwagen. :( Ik heb de wijzigingen weer ongedaan gemaakt.

 

De product-list.tpl lijkt perfect. Alles is zichtbaar!

Echter, de ajax-cart.js die in je zip-bestand zit, is op diverse plaatsen afwijkend van de versie die in onze "/themes/[MIJN THEMA]/modules/blockcart2/" staat. Op het eerste gezicht zijn er veel meer afwijkingen dan ik kan begrijpen.

 

Zie je kans om aan te geven wat specifiek voor de wijziging van het "quantity wanted" bedoeld is? Ik zal in ieder geval mijn ajax-cart.js (uit "/themes/[MIJN THEMA]/modules/blockcart2/" meesturen bij deze post. (met .txt als extensie toegevoegd.... Het bestand heet gewoon: ajax-cart.js)

 

Bij voorbaat mijn hartelijke dank,

Peter

vervang op regel 41 in je ajax-cart.js de code

ajaxCart.add(idProduct, null, false, this);

met

ajaxCart.add(idProduct, null, false, this, $('#quantity_wanted_'+idProduct).val(), null);

en probeer het nog eens.

Met deze regel word de functie add (toevoegen) gestart met de instructie om de hoeveelheid te halen uit de input tag met als id quantity_wanted_[idProduct] en dit mee sturen met de ajax call naar cart.php/cart controller.

  • Like 1
Link to comment
Share on other sites

Na nog wat kleine aanpassingen werkt het fantastisch! Heel hartelijk dank voor je inspanningen. Een heel goed voorbeeld wat Open Source kan betekenen!

Ik zal een printscreen toevoegen:

 

post-385739-0-14773500-1350347062_thumb.png

Is toch mooi geworden, wat vindt jij?

 

Overigens vind ik het nog wel lastig om die adviesprijs goed te positioneren. Uiteindelijk is het gelukt, met position:absolute en margin :-64px. Maar ik begrijp niet goed waarom die waarden werken....

 

Succes met al je (ongetwijfeld vele) projecten...

 

Groeten,

Peter

Link to comment
Share on other sites

×
×
  • Create New...