Referens för datumpersonanpassning i mallar
Du kommer att lära dig
Lär dig hur du dynamiskt fyller i och formaterar datum i dina Klaviyo-mallar. Du kan ange datum från profilegenskaper (t.ex. födelsedag) i valfritt meddelande, eller händelsemetadata (t.ex. datum för lagd beställning) i flödesmeddelanden som utlöses av den händelsen.
Fyll i aktuell dag, vecka, månad eller år
Datumetiketter ger dig ett snabbt sätt att infoga tidpunkten för en kampanj i ett meddelande. Datumet är i tidszonen för ditt Konto.
- Aktuell dag i månaden: Den aktuella dagen i månaden är {% current_day %}.
Den aktuella dagen i månaden är 5. - Aktuell veckodag: Den aktuella veckodagen är {% current_weekday %}.
Aktuell veckodag är fredag. - Innevarande månad: Innevarande månad är {% current_month_name %}.
Innevarande månad är september. - Aktuellt år: Det aktuella året är {% current_year %}.
Det aktuella året är 2021.
För närvarande stöder vi endast engelska namn för månader och veckodagar.
Så här lägger du till ett dynamiskt datum i ett meddelande:
- Från valfritt textfält (t.ex. ett textblock i ett e-postmeddelande, sms-redigeraren eller redigeraren för push-meddelanden) klickar du på ikonen för personalisering.
- Välj Datum i menyn Alla typer.
- Välj en datumetikett (t.ex. aktuellt datum, aktuellt år osv.).
Letar du efter en profilgenskap av typen datum, till exempel födelsedag? Välj Anpassat i menyn Alla typer och sök sedan eller bläddra för att hitta egenskapen. Datumegenskaper från händelser finns i förhandsgranskningsfönstret för ett meddelande i alla händelsebaserade flöden.
Fyll i ett dynamiskt datum som händelsevariabel i ett flödesmejl
Låt oss säga att du skickar ett tackmejl via ett flöde som utlöses varje gång en kund lägger en beställning. Du kanske vill lägga till en mening som säger "Tack för din beställning den _____" och ange datumet då beställningen gjordes.
Om du tittar på data som Klaviyo tar emot tillsammans med en händelse, till exempel en Placed Order -händelse, bör du kunna hitta en variabel där som representerar orderdatumet. Leta efter en egenskap som heter ”order date” eller något liknande, eftersom egenskapsnamnet varierar beroende på din datakälla.
När du har hittat den här variabeln kommer du förmodligen snart att märka att formatet på det här datumet inte är idealiskt att använda i en mall – det är en UTC-tidsstämpel som till exempel inte ser så bra ut i ett e-postmeddelande:
Om du vill fylla i det här datumet i ett mer kundvänligt format behöver du använda några filter. Klaviyo har stöd för de flesta av filtren som används av Django-mallspråket. För det här användningsfallet behöver du använda följande filter:
- Format_date_string
Detta filter tolkar och konverterar teckensträngen som skärs ut från den fullständiga UTC-tidsstämpeln till ett faktiskt datum. Det är nödvändigt för att du ska kunna använda datumfiltret för att formatera det. - Datum
Här väljer du hur du vill att ditt datum ska formateras; Django har ett schema som beskriver hur du ska gå tillväga.
För att använda dessa filter separerar du dem med ett lodstreck (|) utan mellanslag emellan:
{{ your_variable|format_date_string|date:'F d, o' }}
Ovanstående skulle göra detta:
2016-02-11T16:46:08-05:00
till det här:
11 februari 2016
Nedan finns några ytterligare vanliga datum- och tidsformat, tillsammans med formateringen som används för att visa dem.
26 februari 2016 | {{ your_variable|format_date_string|date:'F d, o' }} |
26 februari 2016 | {{ your_variable|format_date_string|date:'d F o' }} |
26.02.2016 | {{ your_variable|format_date_string|date:'m-d-Y' }} |
26-02-2016 | {{ your_variable|format_date_string|date:'d-m-Y' }} |
2016-02-26 (inga inledande nollor) | {{ your_variable|format_date_string|date:'n/j/y' }} |
2016-02-26 (inga inledande nollor) | {{ your_variable|format_date_string|date:'j/n/y' }} |
11 feb. | {{ your_variable|format_date_string|date:'M d' }} |
11 feb | {{ your_variable|format_date_string|date:'d M' }} |
26.02.2016 4:46:08 | {{ your_variable|format_date_string|date:'m-d-Y g:i:s' }} |
02-26-2016 4:46 p.m. | {{ your_variable|format_date_string|date:'m-d-Y g:i a' }} |
26 februari 2016 16:46 | {{ your_variable|format_date_string|date:'m-d-Y g:i A' }} |
En fullständig lista över alternativ för datumformat finns i Djangos dokumentation om datumformat.
Använda variabeln ”today”
Variabeln today gör att du kan visa dagens datum när ett meddelande skickas. Använd den här koden för att visa dagens datum:
{% today "%Y-%m-%d" as today %} {{ today }}
Datumet visas i följande format: 2021-03-18
Se till att använda hela kodraden ovan. Din datumvariabel kommer inte att renderas om du inkluderar en etikett men inte den andra (dvs. du kan inte använda etiketten {{ today }} ensam utan den föregående etiketten {% today ... %}).
Om du vill använda en annan formatering använder du filtren i avsnittet ovan på variabeln {{ today }}. Till exempel skulle {% today '%Y-%m-%d' as today %} {{ today|format_date_string|date:'m/d/Y' }} återges med formatet MM/DD/YYYY.
Beräkna ett framtida datum
Om du vill visa ett framtida datum i förhållande till den dag ett meddelande skickas använder du filtret days_later på variabeln today som beskrivs ovan, så här:
{% today "%Y-%m-%d" as today %} {{ today|days_later:5 }}
Den här variabeln visar datumet 5 dagar efter att ett meddelande har skickats. Så om meddelandet skickades den 18 mars blir datumet som visas 2021-03-23.
Det här filtret kan kombineras med formateringsfiltren som beskrivs ovan för att använda ett annat datumformat. Ta den här koden som ett exempel:
{% today '%Y-%m-%d' as today %} {{ today|days_later:5|format_date_string|date:'M d' }}
Om meddelandet skickades den 18 mars skulle detta visas som 23 mars.