La clé properties permet de modifier facilement les informations des entités affichées un peu partout (les informations d'une order, d'un parcel, ou de line items, ou même des pop-ins).
Pour les orders, parcels et line items
...
Code Block | ||||
---|---|---|---|---|
| ||||
properties: claim: order: [ ['id', 'delivery.type'], # Ligne 1 ['date'] # Ligne 2 ] line_item: [...] pack: parcel: [...] line_item: [...] |
Dans l'exemple ci-dessus, la première ligne d'order contiendra les propriétés order.id et order.delivery.type
tels que récupérés en appelant l'OMS, et séparés par le caractère pipe |
Page avec multi parcel
Dans le cas des pages qui supportent le multi colisage ou multi empaquetage (bag et pack) il y a une entité appele appelé multi_order
, qui correponde a corresponde à celle qu'est utilisé lors que lorsque la store app est configuré pour faire de multi colisage empaquetage (clé options.create_multi_parcels
)
...
La pop-in affichée sur diverses pages peut également être personnalisée. Le format de la config est cependant un peu différent:
configurer la pop-in
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
properties: popin: line_item: [ ['features.name'], # Titre de la pop-in ['|rawstring:Référence', 'item_id'] # Ligne 1 Sous l'image ['|rawstring:Prix', 'payment.price'] # Ligne 2 Sous l'image ['|rawstring:Couleur', 'features.color'] # Ligne 3 Sous l'image ['|rawstring:Taille', 'features.size'] # Ligne 4 Sous l'image ] |
...
Si je veux récupérer le 3ième élément d'un tableau (index 2), j'utiliserai delivery.destination.address.lines|arrayelement:2.
Tip |
---|
ParenthèsesUne syntaxe de parenthèsage est disponible pour les expressions les plus complexes. Les propriètés les plus imbriquées dans des parenthèses seront évaluées en priorité. Ainsi, la proprièté " En l'absence de parenthèses, les formatteurs sont appliqués de gauche à droite. |
formatter | effet | option | example |
---|---|---|---|
arrayelement | Récupère l'élément d'un tableau à l'index défini en option | Index de l'élément | types|arrayelement:0 |
capitalize | Remplace toutes les lettres par des minuscules, sauf la première, en majuscule | features.name|capitalize |
dress | |||
concat | Concatène une autre property, sans espace | Propriété à concaténer | carrier|concat:tracking_code |
concatraw | Concatène une string définie dans l'option | String à concaténer | state|concatraw:par |
l'entrepôt |
par |
l'entrepôt | |||
currency | Formate un nombre en une currency, avec un symbole défini dans une autre propriété | La propriété contenant la currency | payment.price|currency:payment.currency |
£ | |||
currencyraw | Formate un nombre en une currency, avec un symbole défini dans l'option | La currency à utiliser | payment.price|currencyraw:USD |
$ | |||||||||
dateto | Formate un intervalle de date
| Propriété correspondant à la date de fin | eta_start|dateto:end_end |
- |
30 |
september | |||
expirationcolor | Renvoie une date dans la couleur envoyée si elle est expirée | la valeur de warning qui sera soustraite à la date du jour pour le calcul (en secondes) | expiration_dates.client_collect.expiration|expirationcolor:86400,danger,(expiration_dates.client_collect.expiration|moment:DD/MM/YYYY|transcount:carry.reserved_till) Reserved until 10-02-2023 (NB: la valeur avant le | sert pour les calculs de l'expiration (timestamp), la valeur dans les options sert à l'affichage (peut être formatée). |
filter | Parcourt un tableau et garde les éléments de ce tableau dont une propriété vaut une des valeurs fournies. | Une propriété=une liste de valeurs séparées par une virgule | line_items|filter:state=removed,mistaken|length|concatraw: items sont removed ou mistaken 5 items sont removed ou mistaken |
filterlength | Parcourt un tableau et compte le nombre d'élèment de ce tableau dont une proprièté vaut une des valeurs fournies. (v5.5) | Une propriété=une liste de valeurs séparées par une virgule | line_items|filterlength:state=removed,mistaken|transcount:order.cancel_count (5 canceled) |
forcount | Parcourt un tableau et compte la taille d'une proprièté de chaque de ce tableau. (v5.5) | Une propriété | parcels|forcount:piece_ids|transcount:order.item_count 5 items |
hierarchicalchoose | Parcourt un tableau et renvoie l'élément dont l'index est le plus faible dans le tableau défini en option . Si rien ne matche, ne fait rien. (v10.0) | Une liste de valeurs séparées par une virgule | types|hierarchicalchoose:ois,ckc,ffs ckc |
length | Retourne l'attribut length d'un tableau ou d'une string | piece_ids|length | |
link | Formate le résultat sous forme de lien | Une propriété | delivery.carrier.name|link:delivery.carrier.tracking_url |
link_blank | Formate le résultat sous forme de lien blank | Une propriété | delivery.carrier.name|link:delivery.carrier.tracking_url |
lowercase | Remplace toutes les lettres par des minuscules | features.name|lowercase |
dress | |||||||||
moment | Formate un timestamp en utilisant un format de momentjs | Format de la date | date|moment:DD/MM/YYYY | ||||||
mutiply | Permet de multiplier plusieurs valeurs
| les différentes valeurs a multiplier
les arguments sont séparé par une virgule |
x = 0.3 0.64 | ||||||
prepend | Concatène une autre property à gauche | Une propriété | tracking_code|prepend:carrier | ||||||
prependraw | Concatène une string définie dans l'option, à gauche | String à afficher | state|prependraw:L'etat |
est |
est |
dispatched | |||
rawstring | Permet de remplacer le résultat par une string définie dans l'option | String à afficher | |rawstring:Charasse |
sum | Parcourt un tableau et fais la somme de la propriété donnée en option | Une propriété | line_items|sum:payment.price |
trackingcode | Affiche le tracking code s'il y en a, traduit la clé passée en paramètre sinon | Clé à traduire s'il n'y a pas de tracking code | tracking_code|trackingcode:parcel.no_tracking_information "XV265564654" ou "Colis sans information de tracking" s'il n'y a pas de tracking code |
trans | Traduit le résultat (si la clé de traduction existe bien) | |rawstring:states.|concat:state|trans | |
transcount | Prend un nombre en entrée et appelle une traduction avec pluralisation | Clé de traduction | line_items|length|transcount:order.item_count |
items | |||
transcountnotnull |
Appelle une traduction avec pluralisation sur l'input. N'affiche rien si !input vaut false au sens de javascript. (v10.0) | Clé de traduction | line_items|length|transcountnotnull:order.item_count avec line_items = [] : |
unfilterlength | Parcourt un tableau et compte le nombre d’élément de ce tableau dont une proprièté ne vaut pas une des valeurs fournies. (v5.5) | Une propriété=une liste de valeurs séparées par une virgule | line_items|unfilterlength:state=removed,mistaken|concatraw: |
not |
canceled 5 not canceled | |||
uppercase | Remplace toutes les lettres par des majuscules | features.name|uppercase |
DRESS | |||
since | Prend une date en entrée et retourne la difference a partir de maintenant dans la lang du site. (V11.0) | date|since |
Note |
---|
Attention à la façon dont les propriétés sont surchargées. Un tableau de 2 éléments surchargé par un tableau vide reste un tableau de 2 éléments. |
Défaut | Surcharge onboarding | Résultat |
---|---|---|
|
|
|
|
|
|
|
|
|
Note |
---|
L'avantage: il est possible de rajouter une ligne à l'order de la façon suivante, sans que les deux premières lignes ne soient écrasées.
|
...