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
La structure de l'objet properties
est la suivante:
properties
(object) > page
(object) > entity
(array de taille 0 à 3) > propriétés
(array de string)
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é appelé multi_order
, qui corresponde à celle qu'est utilisé lorsque la store app est configuré pour faire de multi colisage empaquetage (clé options.create_multi_parcels
)
Pour les pop-ins
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
]
|
Dans l'exemple ci-dessus, la première ligne définit le titre de la pop-in, et toutes les lignes suivantes seront affichées sous l'image. Les éléments ne seront pas séparés par le pipe |
, mais divisés en colonnes (voir screenshot ci-dessus).
Tip |
---|
Pour voir les properties par défaut, utiliser la commande |
Formatter les propriétés
Souvent, les propriétés des objets nécessitent d'être formattés pour des raisons esthétiques.
Il est possible d'utiliser un ou plusieurs formatteurs avec la sytaxe suivante 'property|formatter:option|formatter|formatter'.
Pour que la première lettre du type de livraison soit en majuscule, on utilisera 'delivery.type|capitalize'
par exemple.
...
Table of Contents | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Introduction
Note |
---|
As a prerequisite, you need to ensure that the fields you want to display are actually retrieved in the query. For more information, click here /wiki/spaces/DOCUMENTAT/pages/1140785164 |
What we call ‘displayed properties’ is the information displayed on all Store App display blocks, at different levels (orders, lines, parcels, etc) as well as in the popins.
...
You can find the displayed properties configuration in the Configuration > Store App > Page settings > {Page name} > Displayed properties section of your admin backoffice.
The default configuration is displayed, but it can be overwritten. In general, property blocks are organised into 3 lines, each of which can be overloaded independently
...
Tip: to return to the default configuration, click on the wheel and then ‘return to default configuration’.
Entities table
In each page, the display blocks correspond to particular entities, and it is sometimes difficult to navigate. You can use the table below to find the names of the entities used page by page.
Expand | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Display the correct field
It's not easy to find the right path for the field you want to display, especially as the logic depends on each page.
The best way is to use the paths configured by default on the entity, and try to reproduce the same path with the field you want to add.
Example:
containers.0.parcel.delivery.carrier.name
displays the name of the carrier in the ‘order’ section of the pack page
Specific formatting
Syntax
Properties often need to be formatted for aesthetic reasons.
It is possible to use one or more formats with the following syntax field|formatter1:option|formatter2|formatter3
.
In the absence of parentheses, formats are applied from left to right.
Examples:
to capitalize the first letter of the delivery type, use
delivery.type|capitalize
to retrieve the 3rd element of an array (index 2), I'll use
delivery.destination.address.lines|arrayelement:2
...
Parenthèses
Une syntaxe de parenthèsage est disponible pour les expressions les plus complexes.
...
Note |
---|
The format |
Parenthesis
A parenthesis syntax is available for the most complex expressions.
Properties that are nested within parentheses will be evaluated first.
Example:
The following property will display 1 / 2
.
parcels|forcount:line_item_ids|concatraw: / |concatraw: (line_item_
...
groups|length)
...
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
...
All formats available
...
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.
...
Name | Description | Option | Example → Render |
---|---|---|---|
| Retrieves the element of an array with index. | Element index |
|
→ ffs |
|
Replace all letters with lower case, except the first, which is upper case. |
|
→ Summer dress |
|
Concatenates another property, |
without spaces. | Property to concatenate |
|
String à concaténer
→ ups64477466854 |
|
Concatène une string définie dans l'option
Concatenates a string. | Defined string |
|
dispatched par l'entrepôt
currency
Formate un nombre en une currency, avec un symbole défini dans une autre propriété
| |||
| Formats a number into a currency, with a symbol defined in another property. | Property containing the currency |
|
La currency à utiliser
-> 35,99 £ |
|
Formate un nombre en une currency, avec un symbole défini dans l'option
Formats a number into a currency, with a symbol defined in the expression. | The currency to use |
|
Propriété correspondant à la date de fin
→ 35,99 $ |
|
Formate un intervalle de date
Status | ||||
---|---|---|---|---|
|
Format a date range. | Property corresponding to end date |
|
→ 27 - 30 september | |
| Divides a value of a property by an another. |
expirationcolor
Renvoie une date dans la couleur envoyée si elle est expirée
Il est possible de passer un paramètre relatif (secondes à retirer à la date d'expiration)
la couleur à mettre si la date est expirée
La valeur à retourner (formatée si besoin à l'aide d'une autre fonction)
Divisor property |
| ||
| Returns a date in the color sent if expired. It is possible to pass a relative parameter (seconds to be subtracted from the expiry date). | The warning value to be subtracted from the current date for the calculation (in seconds) The color to be set if the date has expired. The value to be returned. |
|
→ 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
| Scans an array and keeps the elements of this array whose property is worth one of the values provided. | Comma-separated list of values |
|
line_items
→ 5 items sont removed ou mistaken |
|
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
Scans an array and counts the number of elements in the array whose property has one of the provided values. | Comma-separated list of values |
|
→ 5 canceled |
|
Parcourt un tableau et compte la taille d'une proprièté de chaque de ce tableau. (v5.5)
Scans an array and counts the size of each property in the array. | Property |
|
→ 5 items |
|
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)
Scans an array and returns the element with the lowest index in the array defined in option . If nothing matches, does nothing. | Comma-separated list of values |
|
ckc
length
→ ckc | |||
| Calculates the total quantity of indexes in the supplied index ranges. |
| |
| Returns the length attribute of an array or string. |
|
Une propriété
→ 3 |
|
Formate le résultat sous forme de lien
Formats the result as a link. | Property |
|
Une propriété
→ <a href="colissimoURL">colissimo</a> |
|
Formate le résultat sous forme de lien blank
Formats the result as a blank link. | Property |
|
→ <a target="_blank" href="colissimoURL">colissimo</a> |
|
Replace all letters with lowercase letters. |
|
Format de la date
→ summer dress |
|
Formate un timestamp en utilisant un format de momentjs
Format a timestamp using momentjs. | Date format |
|
→ 29/03/2018 |
|
Permet de multiplier deux valeurs
Status | ||||
---|---|---|---|---|
|
Peut prendre en option des features ou des constante
Pour rajouter une unité au résultat, il existe diffèrent formateurs ( concat, concatraw, currency, currencyraw..)
On peut limiter le nombre de décimales en rajoutant un second argument sépare par une virguleMultiplies two values. | Can take optional features or constants. You can limit the number of decimal places by adding a second argument separated by a comma. By default, results are limited to 2 digits after the decimal point. |
|
→ 17.97 (payment.price = 5.99 |
and features.quantity = 3 |
)
|
→ 3.33 |
and features.quantity = 1/3 |
) |
|
Concatène une autre property à gauche
Concatenates another property on the left. | Property |
|
String à afficher
→ ups64477466854 |
|
Concatène une string définie dans l'option, à gauche
Concatenates a string on the left. | Defined string |
|
L'etat est String à afficher
|
|
Permet de remplacer le résultat par une string définie dans l'option
Replaces the result with a string defined. | Defined string |
|
|
| Scans an array and sum |
Parcourt un tableau et fais la somme de la propriété donnée en option
Une propriété
the given property in the array. | Property |
|
→ 75.8 |
|
Displays tracking code |
if available, translates key passed in parameter otherwise. | Key to translate |
|
"XV265564654" ou "Colis sans information de tracking" s'il n'y a pas de tracking code
trans
→ XV265564654 or Missing tracking | |||
| Translates the result (if the translation key exists). |
|
transcount
Prend un nombre en entrée et appelle une traduction avec pluralisation
Clé de traduction
| Takes a number as input and calls a translation with pluralization. | Key to translate |
|
line_items
→ 3 items |
|
Prend un nombre en entrée et appelle une traduction avec pluralisation. N'affiche rien si le nombre vaut 0. (v5.5)
Appelle une traduction avec pluralisation sur l'input. N'affiche rien si !input vaut false au sens de javascript. (v10.0)
Clé de traduction
Calls a translation with pluralization on the input. Displays nothing if !input is false in the javascript sense. | Key to translate |
|
with line_item_ |
groups = [] : with 2 line_item_groups: |
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
| |||
| Scans an array and counts the number of elements whose property is not one of the provided values. | Comma-separated list of values |
|
→ 5 not canceled |
|
Replace all letters with capital letters. |
|
→ SUMMER DRESS |
|
Prend une date en entrée et retourne la difference a partir de maintenant dans la lang du site.
(V11.0)
date|since
il y a 1 heure
...
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
...
['id']
...
['label']
...
['label']
...
['id', 'label', 'delivery']
...
['date']
...
['date', 'label', 'delivery']
...
['id', 'label', 'delivery']
...
['date', '', '']
...
['date', '', ''], mais affiché commme ['date']
Takes a date as input and returns the difference from now in the site's lang. |
|