Automatisch kortingspercentage berekenen

JaivyDaamJaivyDaam Berichten: 29 Lightspeed Staff Lightspeed
Hallo iedereen,

op verzoek van een ander forum gebruiker heb ik een stukje code geschreven waarbij automatisch korting berekend wordt in een label. Hiervoor dient wel de Thema Editor te worden geactiveerd.
(LET OP!: JE KRIJGT DAARNA GEEN UPDATES MEER VAN DIT THEMA EN ZIJN ALLE PROBLEMEN JE EIGEN VERANTWOORDELIJKHEID: https://ecom-support.lightspeedhq.com/hc/nl/articles/220662147-Gevolg-activatie-van-de-theme-editor )

Deze stappen en pagina's zijn specifiek voor het thema Conform Plus.
Stap 1: Activeer Thema Editor voor het Conform Plus Thema (Als je weet wat je doet, kan je dit ook toepassen op andere thema's)
Stap 2: Open de "products.rain" onder "Snippets"
Stap 3: Selecteer regels 6 tot en met 22 (Afbeelding 1)

Afbeelding 1

Stap 4: Vervang deze met onderstaande code
{% if template == 'pages/index.rain' and not product.price.price_old %}
        {% for id in newest %}
        {% if product.id == id.id %}
        <div class="sale-new new-label">
          {{ 'New' | t }}
        </div>
        {% elseif product.price.price_old %}
        <div class="sale-new">
          {% set percentSale = (100 - ((product.price.price / product.price.price_old) * 100)) %} {# Bereken percentage korting #}
          {{ 'Sale: ' | t }}{{ percentSale | round(2, ceil) }}%
        </div>
        {% endif %}
        {% endfor %} 
      {% elseif product.price.price_old %}
      <div class="sale-new">
        {% set percentSale = (100 - ((product.price.price / product.price.price_old) * 100)) %}{# Bereken percentage korting #}
        {{ 'Sale: ' | t }}{{ percentSale | round(2, ceil) }}% {# altijd afronden met 2 decimalen dat vanaf 5 of hoger omhoog afrond
      </div>
      {% endif %}
De code ziet er nu zo uit (Afbeelding 2) waarbij op de winkel automatisch je korting berekent wordt. (Afbeelding 3)

Afbeelding 2


Afbeelding 3


Als je weet wat je doet, is het ook mogelijk de berekening toe te passen op je eigen labels in elk thema. Het gaat namelijk vooral om deze berekening:
{% set percentSale = (100 - ((product.price.price / product.price.price_old) * 100)) %}{# Bereken percentage korting #}
{{ 'Sale: ' | t }}{{ percentSale | round(2, ceil) }}%

3 reacties

  • ClicknBrickClicknBrick Berichten: 170 Member ✭
    juni 2018 aangepast
    Ik zou dit heel graag in mijn thema (Conversion) toevoegen, maar daar ziet de code er helaas heel anders uit. Is er een thema waar dit standaard in zit? Ik weet dat ik het "vroeger" wel had.

    Nou weet ik op zich wel iets van code. Gaat het er omdat dat je dat laatste stukje code dat je geplaatst hebt ergens in je image wrap plakt?
    Shop je LEGO voordelig en snel bij de échte specialist, Click&Brick 
  • ClicknBrickClicknBrick Berichten: 170 Member ✭
    juni 2018 aangepast
    Voor degenen die na mij komen: 


         
     <span class="korting">{% set percentSale = (100 - ((product.price.price / product.price.price_old) * 100)) %}{# Bereken percentage korting #}
          {{ 'korting: ' | t }}{{ percentSale | round(2, ceil) }}%</span>

    kun je relatief probleemloos ergens in plakken.
    De class "korting" kun je dan gebruiken om je opmaak in de custos.css te definiëren.
    Shop je LEGO voordelig en snel bij de échte specialist, Click&Brick 
  • ClicknBrickClicknBrick Berichten: 170 Member ✭
    juni 2018 aangepast
    Met de code tag ging niet goed en ik lijkt het niet meer te kunnen bewerken.
    Maar deze code kun je redelijk probleemloos op z'n plek plakken:


     <span class="korting">{% set percentSale = (100 - ((product.price.price / product.price.price_old) * 100)) %}{# Bereken percentage korting #}
          {{ 'korting: ' | t }}{{ percentSale | round(2, ceil) }}%</span>


    .korting kun je dan gebruiken voor definitie in custom.css
    Shop je LEGO voordelig en snel bij de échte specialist, Click&Brick 
Log In of Registreer om te reageren.