Visa varianter som inte finns i lager
Guide til at vise udsolgte varianter i dit Shoporama-tema, så kunder kan se hele udvalget og tilmelde sig lagernotifikation.
Har du en profil med fx seks størrelser, men kun tre er på lager, viser Shoporama som standard kun de tre tilgængelige. Du kan tilpasse dit tema, så alle varianter vises, også de udsolgte, og kunden får et komplet overblik over sortimentet.
Standard-adfærd
Som udgangspunkt viser Shoporama kun varianter, der er på lager. Det forhindrer kunden i at vælge en størrelse eller farve, der alligevel ikke kan leveres. I langt de fleste shops fungerer det fint, men hvis du sælger en kollektion, hvor enkelte størrelser ofte er udsolgt, kan det være en fordel at vise alle varianter og blot markere dem, der ikke er tilgængelige lige nu.
De rigtige metoder i temaet
På et SafeProduct-objekt har du to metoder, du kan kalde i din Smarty-template:
- $product->getInStockVariants() returnerer kun varianter, der er på lager.
- $product->getStockVariants($only_in_stock, $hide_stock) returnerer alle varianter. Sæt første parameter til false for at få både udsolgte og tilgængelige varianter med.
Begge metoder returnerer et array af rækker (ikke variant-objekter). Hver række er et associativt array med følgende nøgler:
- attr_name, attributtens navn (fx "Størrelse")
- attr_tag, attributtens tag (kodevenligt navn, fx "size")
- name, variantværdiens navn (fx "M" eller "Rød")
- cnt, antal på lager (0 hvis udsolgt, null hvis du har valgt at skjule lagerantal)
- attribute_id og attribute_value_id, id'er du bruger, når varianten skal lægges i kurven
- weight, sorteringsrækkefølgen
- price og sale_price, evt. variantspecifik pris
Vis alle varianter i temaet
Skift til getStockVariants(false) i din produkt-template. Eksempel som dropdown:
<select name="attribute[]">
<{foreach $product->getStockVariants(false) as $variant}>
<option value="<{$variant.attribute_value_id}>"
<{if $variant.cnt <= 0}>disabled<{/if}>>
<{$variant.name}><{if $variant.cnt <= 0}> (udsolgt)<{/if}>
</option>
<{/foreach}>
</select>
Eksempel som klikbare knapper med visuel markering af udsolgte muligheder:
<{foreach $product->getStockVariants(false) as $variant}>
<button type="button"
data-attribute-id="<{$variant.attribute_id}>"
data-attribute-value-id="<{$variant.attribute_value_id}>"
class="variant-btn <{if $variant.cnt <= 0}>is-sold-out<{/if}>"
<{if $variant.cnt <= 0}>disabled<{/if}>>
<{$variant.name}>
</button>
<{/foreach}>
Styling af udsolgte varianter
- Tilføj attributten disabled til udsolgte muligheder, så de ikke kan vælges.
- Marker dem visuelt med en CSS-klasse, fx en dempet farve, gennemstregning eller en diagonal stribe.
- Vis teksten (udsolgt) efter variantnavnet, så det er tydeligt for kunden.
Skjul lagerantal
Hvis du ikke vil afsløre præcis hvor mange der er på lager (fx "kun 2 tilbage"), kan du sætte anden parameter til true:
<{foreach $product->getStockVariants(false, true) as $variant}>
...
<{/foreach}>
Så vil $variant.cnt være null på alle varianter, der er på lager. Du kan stadig se om en variant er udsolgt, fordi den så har værdien 0.
Kombiner med lagernotifikation
For udsolgte varianter kan du tilbyde kunden at modtage en mail, når varen er på lager igen. Det gør, at kunden ikke forsvinder, selv om den ønskede størrelse eller farve er udsolgt lige nu.
Tip: Når kunden kan se hele sortimentet, virker udvalget bredere, og det øger sandsynligheden for, at kunden vender tilbage, når varen kommer på lager igen.
Ofte stillede spørgsmål
Skal jeg vise alle udsolgte varianter på alle produkter?
Ikke nødvendigvis. Det giver mest mening på modeprodukter med klare størrelseskategorier (S, M, L), eller når en kollektion typisk udsælges i bestemte størrelser først. På meget store sortimenter, eller på produkter hvor varianter ofte udgår permanent, kan det skabe forvirring.
Kan kunden lægge en udsolgt variant i kurven?
Nej. Når attributten disabled er sat på muligheden, kan den ikke vælges. Hvis du bygger custom JavaScript, skal du selv sørge for at blokere udsolgte varianter, så et "Læg i kurv"-klik ikke går igennem.
Hvor finder jeg den nuværende variant-løkke i mit tema?
Søg efter getInStockVariants eller getStockVariants i din temamappe (typisk i product/view.html). Det er der, du skal lave ændringen. Husk at gemme en kopi af filen først.
Påvirker det Google Shopping eller andre feeds?
Nej. Visningen af udsolgte varianter er kun en ændring på selve produktsiden i din webshop. Produktfeeds håndteres separat og baserer sig på det reelle lagerantal pr. variant.
Hvad sker der med statistikken, når jeg viser udsolgte varianter?
Konverteringsraten kan stige en smule, fordi flere kunder skriver sig op via lagernotifikation, men du risikerer også, at kunder hopper fra, fordi deres ønskede størrelse er udsolgt. Lav gerne en split-test, før du ruller ændringen ud i hele shoppen.
Hvordan ser jeg hurtigt om en variant er på lager i admin?
Gå ind på produktet i admin og se under "Varianter". Hver variant har sit eget lagerantal, og du kan filtrere produktoversigten på lagerstatus.
Kan jeg vise antallet af udsolgte varianter samlet?
Ja. Tæl rækker, hvor cnt er 0 i loopet. Det kan bruges til en besked som "3 ud af 6 størrelser er udsolgt".
Hvad er forskellen på getInStockVariants og getStockVariants?
getInStockVariants() returnerer altid kun de varianter, der har lager. getStockVariants() kan både give dig kun-på-lager (med true som første parameter) eller alle varianter (med false). Brug den sidste, når du vil vise udsolgte muligheder.
Skal jeg slette gamle udsolgte varianter helt?
Hvis en variant ikke kommer tilbage, er det renere at slette eller skjule den helt fra produktet. Brug visning af udsolgte varianter til kortvarige udsalg og sæsoner, ikke til varianter, der er udgået permanent.
Har du brug for hjælp? Kontakt os på support@shoporama.dk.
Relaterade artiklar
Produktprofiler och varianter
Guide till produktprofiler och varianter i Shoporama. Förstå hur profiler, attribut och varianter hänger ihop.
Synkronisering av lager med varianter
Guide till lagersynkronisering av produkter med varianter i Shoporama.
Lageravisering: Meddela dina kunder när artiklar finns i lager igen
Lär dig hur du ställer in e-postmeddelanden så att dina kunder kan meddelas när slutsålda produkter finns i lager igen i din Shoporama-webbutik.
Ta bort produkter från nätet när de är slut i lager
Guide för att styra om produkter som inte finns i lager ska visas eller döljas automatiskt i din Shoporama-webbutik.
Variabler i ett Shoporama-tema
Översikt över globala och sidspecifika Smarty-variabler som är tillgängliga i Shoporama-teman.