Referens för villkorslogik för mallar
Du kommer att lära dig
Läs om alla tillgängliga villkor du kan använda för att dynamiskt visa ett block, ett avsnitt eller ett anpassat kodavsnitt bara för vissa mottagare. Om du vill lära dig hur du använder dessa villkor i dina mallar kan du läsa vår artikel om hur du visar eller döljer mallblock baserat på dynamiska variabler.
Lär dig använda villkorslogik:
Var du kan använda villkor
Du kan använda villkor i:
- E-postmeddelanden
- Skapa logik för att visa/dölja för att dynamiskt visa block eller avsnitt bara för vissa personer.
- Om du föredrar att inte skriva kod kan du använda verktyget för visa-/dölj-logik i stället.
- Skriv if/else-villkor för att skapa anpassade Django-uttryck.
- Skapa logik för att visa/dölja för att dynamiskt visa block eller avsnitt bara för vissa personer.
- Klaviyo Customer Hub
- Skriv if/else-villkor för att skapa anpassade Django-uttryck i innehållsblock
Tips för att lyckas
När du bygger upp villkor för visa/dölj ska du vara uppmärksam på detaljerna. Villkor för visa/dölj är skiftlägeskänsliga, och stavningen måste exakt matcha dina profil- eller händelsedata.
Se också till att du tar hänsyn till alla möjliga tittare. Om du till exempel visar ett specifikt block endast för invånare i en viss delstat, ta med alla möjliga stavningar av delstatens namn (t.ex. Massachusetts, massachusetts, mass, MA). Ta också hänsyn till profiler som kanske inte har egenskapen inställd alls.
När du har byggt meddelandet och tillämpat dina villkor kan du förhandsgranska det med hjälp av en mängd olika profiler för att bekräfta att meddelandet visas som du tänkt i alla scenarier.
Villkorsstrukturer
Villkoren bör innehålla 1–3 element beroende på vad du vill uppnå med blocket och vilka data du använder. Villkoret måste åtminstone innehålla en variabel (t.ex. person|lookup:'Favorite Color'). Det kan även innehålla en jämförelsefunktion, som = (är lika med) eller > (större än), samt ett värde som anger vilket egenskapsvärde som ska letas efter. Dessutom börjar vissa villkor med not om du vill att blocket bara ska visas för profiler som inte uppfyller ett villkor.
Diagrammet nedan innehåller en fullständig lista över möjliga strukturer som ett villkor för att visa/dölja kan följa.
Exempelvillkor | Visa blocket om... | Godkända datatyper |
person|lookup:'Favorite Color' | Egenskapen | Alla |
not person|lookup:'Favoritfärg' | Egenskapen | Alla |
person|lookup:'Favorite Color' == 'green' | Egenskapen | Text, nummer |
person|lookup:'Favorite Color' != 'green' | Egenskapen | Text, nummer |
person|lookup:'Age' > 20 | Egenskapen | Antal |
person|lookup:'Age' >= 20 | Egenskapen | Antal |
person|lookup:'Ålder' < 20 | Egenskapen | Antal |
person|lookup:'Age' <= 20 | Egenskapen | Antal |
’green’ in person|lookup:'Favorite Colors' | Egenskapen Egenskapen | Lista, text |
inte ”grön” personligen|lookup:'Favoritfärger' | Egenskapen Egenskapen | Lista, text |
Villkor för booleska värden
Om du refererar till datalager som ett booleskt värde behöver du använda 1 och 0 i stället för ”true” och ”false” i din definition av villkoret för att visa/dölja. Sätt inte citattecken runt 1 eller 0. Använd exempelvillkoren nedan som en mall.
Exempelvillkor | Visa blocket om... |
person|lookup:'VIP' == 1 | Egenskapen |
person|lookup:'VIP' == 0 | Egenskapen |
Villkor för booleska värden som lagras som text
Om dina true/false-data lagras som text, inte som ett booleskt värde, kan du använda exempelvillkoren för textegenskaper ovan. Om du inte är säker, eller om du refererar till en egenskap som innehåller både booleska värden och text, kan du använda de här strukturerna för att täcka alla scenarier. Ta med alla stavningar och versaliseringar som finns i dina data.
Exempelvillkor | Visa blocket om... |
person|lookup:'VIP' == 1 or person|lookup:'VIP' == 'true' or person|lookup:'VIP' == 'True' | Egenskapen |
person|lookup:'VIP' == 0 or person|lookup:'VIP' == 'false' or person|lookup:'VIP' == 'False' | Egenskapen |
Bygg komplexa villkor
Om du vill att ditt block ska visas för personer som uppfyller flera kriterier, eller om du har ett komplext användningsfall, kan du använda flera villkor för visa/dölj för ett block. För att göra det kopplar du ihop en serie villkor med OCH eller ELLER. Om du till exempel vill visa ett block för alla i Massachusetts, men Massachusetts stavas olika i vissa profiler, kan du använda ett villkor som det här:
person.location.region == 'Massachusetts' or person.location.region == 'massachusetts' or person.location.region == 'mass' or person.location.region == 'MA'
Om du bara vill visa ett block för personer vars favoritfärg är grön och som också är VIP:ar kan du använda ett villkor som detta:
person|lookup:'Favorite Color' == 'green' and person|lookup:'VIP'== 1
Villkorssatser och inline-textredigeraren
När du lägger till vissa villkorssatser i ett textblock kan de försvinna från inline-textredigeraren. Koden finns fortfarande kvar, den är bara dold. För att visa och redigera villkorsstyrda satser använder du Django Tag Builder eller flyttar innehållet till ett dedikerat HTML-block för direkt kodredigering.
Följande etiketter visas inte i den inbyggda textredigeraren, men de finns kvar i textblocket:
- {% for ... %}
- {% endfor %}
- {% if ... %}
- {% elif ... %}
- {% else %}
- {% endif %}
- {% with ... %}
- {% endwith %}