Jump to content
  • 0

Powielanie stanu magazynowego po dodaniu do koszyka itp.


edde27

Question

Witam. Na wstępie zaznaczę, że stawiam pierwsze kroki w preście, ale minimalne doświadczenie z kodami mam. 

Szablon classic, ps 1.7.7.7.

Mam problem z powielaniem ilości dostępnych produktów pod ceną na stronie produktu. Z uwagi na to, że szablon ten ma możliwość wyświetlania dostępnej ilości produktu w zakładce produktu, a nie koło przycisku dodaj do koszyka, skopiowałam fragment kodu odpowiedzialnego za tą funkcję z product-details.tpl do product-prices.tpl. Wszystko jest w porządku z działaniem stanu, jednak po zmianie ilości sztuk w okienku obok "dodaj do koszyka" lub po dodaniu do koszyka, ale również przy wyborze kombinacji stan nie jest podmieniany tylko schodzi na dół a wyżej pojawia się nowy stan, na przykład po dodaniu produktu do koszyka 2 produktów z 10 dostępnych, "w magazynie 10 szt." schodzi niżej, a powyżej wyświetla się zaktualizowana ilość "w magazynie 8szt.". 

 W zakładce "Szczegóły produktu" zmiana ilości sztuk jest podmieniana. Czy można dodać do tego fragmentu kodu jakąś funkcję podmieniającą, albo czyszczącą wcześniej wyświetlany stan ? A może źle podchodzą do tematu i jest jakieś lepsze rozwiązanie na wyświetlanie dostępnych produktów pod ceną? 

Fragment skopiowanego kodu wyświetlającego stan dla wybranego produktu:

{block name='product_quantities'}
    {if $product.show_quantities}
      <div class="product-quantities">
        <label class="label">{l s='In stock' d='Shop.Theme.Catalog'}</label>
        <span data-stock="{$product.quantity}" data-allow-oosp="{$product.allow_oosp}">{$product.quantity} {$product.quantity_label}</span>
      </div>
    {/if}
  {/block}

powielający stan.png

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Po zmianie ilości produktów czy wyborze atrybutu presta odpala w js event productUpdated który w zależności od szablonu może wykonywać pewne czynności u ciebie aktualizuje/dodaje dostępne ilości. Wydaje mi się że najlepiej w js odwołać się do tego eventu i wtedy czyścić ewentualnie przenosić kod. Oczywiście event jest odpalany na jakiś znacznik id lub klasę i może się okazać że wystarczy przenieść nieco więcej kodu z jednego pliku tpl do drugiego.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...