Så fungerar det
En titt i klartext på hur Sami B2B Lock, Password Protect tillämpar dina lås i butiken.
Du behöver inte förstå något av detta för att använda Sami B2B Lock, Password Protect — att aktivera appinbäddningen en gång är all konfiguration som appen behöver. Men om du är nyfiken på vad som faktiskt händer när en kund kommer till en låst sida, eller försöker förstå varför ett lås visas eller inte visas, går den här sidan igenom det.
Appinbäddningen körs på varje butikssida
Section titled “Appinbäddningen körs på varje butikssida”Sami B2B Lock, Password Protect levereras till din butik via en inbäddning i Shopifys temaappstillägg, som i din temaredigerare heter Sami Lock. När inbäddningen är påslagen för ett tema körs ett litet skript från appen på varje sida som en besökare laddar i din butik — startsidan, produktsidor, kollektionssidor, blogginlägg, din varukorg och så vidare.
Skriptet gör ingenting på de flesta sidor. Dess första uppgift vid varje sidladdning är att kontrollera om sidan alls matchar något lås du har skapat — och för de allra flesta sidvisningar i de flesta butiker är svaret nej, så skriptet går åt sidan och sidan visas som vanligt.
Att avgöra vilket lås som gäller
Section titled “Att avgöra vilket lås som gäller”När den aktuella sidan matchar ett lås — för att det är exakt den produkt, kollektion, sida, bloggartikel eller URL som du har låst, eller för att du har låst hela webbplatsen — går appen vidare och kontrollerar dina åtkomstregler för det låset.
Kontrollen sker direkt i besökarens webbläsare, med information som appen redan har tillgång till när den körs i din butik: om besökaren är inloggad, vad som finns i varukorgen, vilket språk och land hen surfar från och så vidare. De flesta åtkomstregler — inloggningsstatus, kundtaggar, varukorgens innehåll, datumintervall, butiksspråk — kan kontrolleras direkt med den informationen, utan att vänta på något annat.
Några regeltyper måste slå upp något innan de kan svara ja eller nej:
- Location matchar besökarens land, som appen fastställer med en offentlig IP-uppslagstjänst i stället för att läsa det från besökarens konto — så en VPN eller proxy kan ändra vilket land som identifieras.
- Cart conditions (produkter, varianter, kvantitet eller delsumma) kontrolleras på nytt varje gång varukorgen ändras, eftersom en besökare kan lägga till eller ta bort produkter efter att sidan först har laddats.
- Purchased items och Order quantity tittar på den inloggade kundens tidigare ordrar för att avgöra om hen har köpt rätt sak tidigare, eller beställt tillräckligt många gånger.
När alla regler i minst en åtkomstnyckel är uppfyllda behandlar appen besökaren som upplåst och låter innehållet visas som vanligt (med förbehåll för det låsbeteende du har konfigurerat, som att dölja ett pris eller omdirigera). Om ingen åtkomstnyckel är helt uppfylld tillämpar appen låset — visar en låsskärm, döljer ett pris eller en Add to cart-knapp, eller omdirigerar, beroende på hur du har ställt in det.
Kassalås fungerar annorlunda
Section titled “Kassalås fungerar annorlunda”Allt ovan beskriver hur lås på din webbplats — produkter, kollektioner, sidor, bloggar, URL:er och hela butiken — tillämpas. Ett kassalås tillämpas på ett annat sätt: i stället för att förlita sig på ett skript som körs i besökarens webbläsare tillämpas det av Shopifys egen kassavalidering, med de villkor du har ställt in i appens regelbyggare för kassan. Det innebär att ett låst kassavillkor inte kan kringgås genom att stänga av JavaScript eller på annat sätt komma runt kod på klientsidan, som ett rent visuellt lås i teorin skulle kunna — Shopify själv vägrar slutföra ordern förrän villkoret är uppfyllt.
Ett konfigurationssteg, inget att redigera i ditt tema
Section titled “Ett konfigurationssteg, inget att redigera i ditt tema”Eftersom appinbäddningen sköter allt detta själv finns det ingen temakod för dig att skriva eller underhålla. Du lägger inte till kodsnuttar i mallar, redigerar inga Liquid-filer och för ingen lista över låsta sidor i ditt tema — allt finns i appen, och inbäddningen läser din aktuella låskonfiguration varje gång en sida laddas. Att aktivera appinbäddningen en gång är den enda konfiguration som krävs. Därefter gäller det i din butik automatiskt när du skapar, redigerar eller tar bort lås i appen, utan något mer att aktivera i ditt tema.