Prestashop 1.7 nákup na desatinné miesta2 minút čítania

Marián 13.04.2022

Prestashop, v dobe písania tohto článku (1.7.8.5), neponúka možnosť objednania si produktov na desatinné miesta. Teda, ak napríklad ponúkate predaj LED pásov a hoci ich viete strihať a predávať na centimetre, vo vašom eshope produkt predávate v metroch. To znamená, že klient si nevie zadať do eshopu 1,4 metra.

Pozor! Toto nie je podrobný návod. Slúži skôr ako pomôcka na zorientovanie sa v súboroch, ktoré je dobré pozmeniť. Záludná funkcia. 

Prečo na to nie je 'ešte' modul?

Odpoveď je ľahká.

Je nutné pozmeňovať aj core prestashopu, teda jeho override-nutie je problematické. Nejaké pokusy sú, no nemusia spĺňať vaše očakávania (ako tu). Niekto využíva na tieto zmeny customFields pri produktoch a niekto mení core.

Dá sa to zmeniť?

ÁNO, dá.

No potrebujete na to pár hodín práce a nutnosťou je aj vedieť ako funguje prestashop + vedieť niečo málo z php, či JavaScriptu. Kuk napríklad tu do nášho dema: https://decimal.nasalasi.sk/

Čo je potrebné zmeniť.

Na týchto img je možné vidieť, čo sme modifikovali. Nebudete potrebovať možno všetko. Záleží, kde chcete, aby to decimal ukazoval. Napríklad frontpage, objednávky v administrácii, pri produktoch, variáciách a podobne.

Zmeníme všetko, kde je quantity z int na float.

a

a ešte.

Samozrejme nutnosťou je zmeniť aj databázu a tabuľky s quantity int na loat 17,1.. Tabuľky ako order_detail, stock_available a stock_mvt.

A je to všetko?

Kdeže 😀 ako som písal vyššie, zmeniť to manuálne vyžaduje čas a znalosti prestashopu.

Je potrebné prepísať JQuery, urobte si vlastné a pridajte tam:

 

$(„input[name=’qty‘]“).TouchSpin({
min: 0,
max: 1000,
initval: “,
replacementval: “,
step: 0.01,
decimals: 2,
stepinterval: 100,
forcestepdivisibility: ‚round‘, // none | floor | round | ceil
stepintervaldelay: 500,
verticalbuttons: true,
verticalupclass: ‚material-icons touchspin-up‘,
verticaldownclass: ‚material-icons touchspin-down‘,
prefix: “,
postfix: “,
prefix_extraclass: “,
postfix_extraclass: “,
booster: false,
boostat: 10,
maxboostedstep: false,
mousewheel: false,
buttondown_class: ‚btn btn-default‘,
buttonup_class: ‚btn btn-default‘,
buttondown_txt: ‚-‚,
buttonup_txt: ‚+‘,

});

a v inputoch, kde je Quantity, tak namiesto quantity_wanted, dajte quantity_wantedX.

Je potrebné ešte niečo?

Samozrejme, vždy je čo meniť 🙂

Zaujala Vás táto úprava a nechcete sa trápiť sami?

  • Autor
  • Posledné pridané
Informácie o
avatar

Marián

Webovým stránkam a programovaniu sa venujem už akú tú dobu. Snažím sa prinášať praktické návody, moduly a iné info zo sveta programovania Webstránok.

Príspevky z rovnakej kategórie

becrea logo

Už od roku 2013 pomáhame spoločnostiam uspokojovať ich komplexné potreby v oblasti webových riešení, pokročilých e-commerce aplikácií a vývoja softvéru ušitého priamo na mieru.

Kontakt

BECREA s.r.o.
Pod Vinbargom 1
085 01 Bardejov

Copyright © BECREA s.r.o. | Ochrana osobných údajov | Made with