Section courante

A propos

Section administrative du site

Les filtres

Les filtres liquides permettent de modifier la sortie des chaînes, des nombres, des variables et des objets. Ils sont séparés de la valeur à laquelle ils sont appliqués par un |.

  1. {{ 'hal 9000' | upcase }} <!-- Sortie: HAL 9000 -->

Certains filtres acceptent des paramètres. Ils peuvent également être combinés et appliqués de gauche à droite.

  1. {{ 2 | times: 2 | minus: 1 }} <!-- Sortie: 3 -->
  2.  
  3. {{ "Bonjour, " | append: user.firstname }} <!-- Sortie: Bonjour, Dave -->

La section ci-dessous décrit différents filtres.

Filtres de tableau

Les filtres de tableau sont utilisés pour travailler avec des tableaux.

batch

Divise un tableau en plusieurs tableaux d'une taille donnée.

Code :

  1. {% assign batches = entityview.records | batch: 2 %}
  2.  
  3. {% for batch in batches %}
  4.  
  5. <ul>
  6.  
  7. {% for item in batch %}
  8.  
  9. <li>{{ item.fullname }}</li>
  10.  
  11. {% endfor %}
  12.  
  13. </ul>
  14.  
  15. {% endfor %}

Sortie :

  1. <ul>
  2.  
  3. <li>Jean Tremblay</li>
  4.  
  5. <li>Denis Terrien</li>
  6.  
  7. </ul>
  8.  
  9. <ul>
  10.  
  11. <li>Jonathan St-Pierre</li>
  12.  
  13. <li>Joseph Ouellette</li>
  14.  
  15. </ul>

concat

Concatène deux tableaux en un seul.

Avec un seul élément comme paramètre, concat renvoie un nouveau tableau composé du tableau d'origine, avec l'élément donné comme dernier élément.

Code :

  1. Group #1: {{ group1 | join: ', ' }}
  2.  
  3. Group #2: {{ group2 | join: ', ' }}
  4.  
  5. Group #1 + Group #2: {{ group1 | concat: group2 | join: ', ' }}

Sortie :

Group #1: Jean, Pierre, Annie

Group #2: Jean, Guillaume

Group #1 + Group #2: Jean, Pierre, Annie, Jean, Guillaume

except

Sélectionner tous les objets d'un tableau dont un attribut donné n'a pas de valeur spécifique. (C'est l'inverse de where.)

Code :

  1. Group #1: {{ group1 | join: ', ' }}
  2.  
  3. Group #2: {{ group2 | join: ', ' }}
  4.  
  5. Group #1 + Group #2: {{ group1 | concat: group2 | join: ', ' }}

Sortie :

Jacques Robitaille

first

Renvoie le premier élément d'un tableau.

first peut également être utilisé avec une notation par points spéciale, lorsqu'il doit être utilisé à l'intérieur d'une balise.

Code :

  1. {% assign words = Ceci est une série de textes | split:   %}
  2.  
  3. {{ words | first }}
  4.  
  5. {% if words.first == Ceci %}
  6.  
  7. Le premier mot est Ceci.
  8.  
  9. {% endif %}

Sortie :

Ceci

Le premier mot est Ceci.

group_by

Regrouper les éléments d'un tableau selon un attribut donné.

Code :

  1. {% assign groups = entityview.records | group_by: 'address1_city' %}
  2.  
  3. {% for group in groups %}
  4.  
  5. {{ group.key }}:
  6.  
  7. {% for item in group.items %}
  8.  
  9. {{ item.fullname }}
  10.  
  11. {% endfor %}
  12.  
  13. {% endfor %}

Sortie :

Redmond:

Jean Tremblay

Dave Thomas

Jake Johnson

New York:

Jack Robinson

join

Joint les éléments d'un tableau avec le caractère passé en paramètre. Le résultat est une chaîne unique.

Code :

  1. {% assign words = Ceci est une série de textes | split:   %}
  2.  
  3. {{ words | join: ,  }}

Sortie :

Ceci, est, une, série, de, textes

last

Renvoie le dernier élément d'un tableau.

last peut également être utilisé avec une notation spéciale par points, lorsqu'il doit être utilisé à l'intérieur d'une balise.

Code :

  1. {% assign words = Ceci est une série de texte | split:   -%}
  2.  
  3. {{ words | last }}
  4.  
  5. {% if words.last == texte -%}
  6.  
  7. Le dernier mot est le texte.
  8.  
  9. {% endif -%}

Sortie :

texte

Le dernier mot est le texte.

order_by

Renvoie les éléments d'un tableau classés selon un attribut donné.

Vous pouvez éventuellement fournir «desc» comme second paramètre pour trier les éléments par ordre décroissant plutôt que par ordre croissant.

Code :

  1. {{ entityview.records | order_by: 'fullname' | join: ', ' }}
  2.  
  3. {{ entityview.records | order_by: 'fullname', 'desc' | join: ', ' }}

Sortie :

David Terrien, Jacques Robert, Jacques Julien, Jean Tremblay

Jean Tremblay, Jacques Julien, Jacques Robert, David Terrien

random

Renvoie un élément sélectionné aléatoirement dans le tableau.

Code :

  1. {{ group1 | join: ', ' }}
  2.  
  3. {{ group1 | random }}

Sortie :

Jean, Pierre, Annie

Pierre

select

Sélectionne la valeur d'un attribut donné pour chaque élément d'un tableau et renvoie ces valeurs sous forme de tableau.

Code :

  1. {{ entityview.records | select: 'address1_city' | join: ', ' }}

Sortie :

Laval, Québec

shuffle

Appliqué à un tableau, renvoie un nouveau tableau contenant les mêmes éléments, dans un ordre aléatoire.

Code :

  1. {{ group1 | join: ', ' }}
  2.  
  3. {{ group1 | shuffle | join: ', ' }}

Sortie :

Jean, Pierre, Annie

Annie, Jean, Pierre

size

Renvoie le nombre d'éléments d'un tableau.

La taille peut également être utilisée avec une notation par points spéciale, lorsqu'elle doit être utilisée à l'intérieur d'une balise.

Code :

  1. {% assign words = Ceci est une série de textes | split:   -%}
  2.  
  3. {{ words | size }}
  4.  
  5. {% if words.size == 6 -%}
  6.  
  7. Le texte contient 6 mots.
  8.  
  9. {% endif -%}

Sortie :

6

Le texte contient 6 mots.

skip

Ignore un nombre donné d'éléments dans un tableau et renvoie le reste.

Code :

  1. {% assign words = Ceci est une série de textes | split:   %}
  2.  
  3. {{ words | skip: 3 | join: ', ' }}

Sortie :

série, de, textes

take

Extrait un nombre donné d'éléments du tableau et renvoie les éléments extraits.

Code :

  1. {% assign words = Ceci est une série de textes | split:   %}
  2.  
  3. {{ words | take: 3 | join: ', ' }}

Sortie :

Ceci, est, une

then_by

Ajoute un ordre supplémentaire à un tableau déjà trié par ordre_ordre.

Vous pouvez également fournir desc comme second paramètre pour trier les éléments par ordre décroissant plutôt que par ordre croissant.

Code :

  1. {{ entityview.records | order_by: 'address1_city' | then_by: 'fullname' | join: ', ' }}
  2.  
  3. {{ entityview.records | order_by: 'address1_city' | then_by: 'fullname', 'desc' | join: ', ' }}

Sortie :

David Terrien, Jacques Robert, Jacque St-Pierre, Jean Tremblay

Jean Tremblay, Jacques St-Pierre, Jacques Robert, David Terrien

where

Sélectionner tous les objets d'un tableau dont un attribut possède une valeur donnée.

Code :

  1. {% assign laval = entityview.records | where: 'address1_city', 'Laval' %}
  2.  
  3. {% for item in laval %}
  4.  
  5. {{ item.fullname }}
  6.  
  7. {% endfor %}

Sortie :

Jean Tremblay

David Terrien

Jacques St-Pierre



Filtres de date

Les filtres de date peuvent être utilisés pour calculer des dates ou pour convertir des valeurs DateHeure dans différents formats.

date

Formate une valeur DateTime à l'aide d'une chaîne de format .NET.

Code :

  1. {{ now | date: 'g' }}
  2.  
  3. {{ now | date: 'MMMM dd, yyyy' }}

Sortie :

5/7/2025 7:20 AM

May 07, 2025

date_add_days

Ajoute le nombre spécifié de jours entiers et fractionnaires à la valeur DateTime. Le paramètre peut être positif ou négatif.

Code :

  1. {{ now }}
  2.  
  3. {{ now | date_add_days: 1 }}
  4.  
  5. {{ now | date_add_days: -2.5 }}

Sortie :

5/7/2025 7:20:46 AM

5/8/2025 7:20:46 AM

5/4/2025 7:20:46 PM

date_add_hours

Ajoute le nombre d'heures et de fractions d'heures spécifié à la valeur DateTime. Le paramètre peut être positif ou négatif.

Code :

  1. {{ now }}
  2.  
  3. {{ now | date_add_hours: 1 }}
  4.  
  5. {{ now | date_add_hours: -2.5 }}

Sortie :

5/7/2025 7:20:46 AM

5/7/2025 8:20:46 AM

5/7/2025 4:50:46 AM

date_add_minutes

Ajoute le nombre spécifié de minutes entières et fractionnaires à la valeur DateTime. Le paramètre peut être positif ou négatif.

Code :

  1. {{ now }}
  2.  
  3. {{ now | date_add_minutes: 10 }}
  4.  
  5. {{ now | date_add_minutes: -2.5 }}

Sortie :

5/7/2025 7:20:46 AM

5/7/2025 7:30:46 AM

5/7/2025 7:18:16 AM

date_add_months

Ajoute le nombre de mois entiers spécifié à la valeur DateTime. Le paramètre peut être positif ou négatif.

Code :

  1. {{ now }}
  2.  
  3. {{ now | date_add_months: 1 }}
  4.  
  5. {{ now | date_add_months: -2 }}

Sortie :

5/7/2025 7:20:46 AM

6/7/2025 7:20:46 AM

3/7/2025 7:20:46 AM

date_add_seconds

Ajoute le nombre spécifié de secondes entières et fractionnaires à la valeur DateTime. Le paramètre peut être positif ou négatif.

Code :

  1. {{ now }}
  2.  
  3. {{ now | date_add_seconds: 10 }}
  4.  
  5. {{ now | date_add_seconds: -1.25 }}

Sortie :

5/7/2018 7:20:46 AM

5/7/2018 7:20:56 AM

5/7/2018 7:20:45 AM

date_add_years

Ajoute le nombre d'années spécifié à la valeur DateTime. Le paramètre peut être positif ou négatif.

Code :

  1. {{ now }}
  2.  
  3. {{ now | date_add_years: 1 }}
  4.  
  5. {{ now | date_add_years: -2 }}

Sortie :

5/7/2025 7:20:46 AM

5/7/2025 7:20:46 AM

5/7/2025 7:20:46 AM

date_to_iso8601

Formate une valeur DateTime selon la norme ISO 8601. Utile pour la création de flux Atom ou de l'élément HTML5 <time>.

Code :

  1. {{ now | date_to_iso8601 }}

Sortie :

2018-05-07T07:20:46Z

date_to_rfc822

Formate une valeur DateTime selon la norme RFC 822. Utile pour la création de flux RSS.

Code :

  1. {{ now | date_to_rfc822 }}

Sortie :

Mon, 07 May 2018 07:20:46 Z

Filtres d'échappement

Les séquences d'échappement permettent d'inclure des caractères spéciaux dans des chaînes sans perturber l'interprétation habituelle de ces caractères par le langage de programmation ou le format.

Les filtres d'échappement suivants remplacent les caractères de chaîne par des séquences d'échappement ou suppriment les caractères de chaîne non valides en fonction du type de destination.

escape

Échappement HTML d'une chaîne de caractères.

Code :

  1. {{ '<p>test</p>' | escape }}

Sortie :

<p>test</p>

html_safe_escape

Convertit une chaîne HTML donnée en un fragment HTML sécurisé.

Code :

  1. {{ '<img src="images/myimage.jpg" onerror="alert(1);">' | html_safe_escape }}

Sortie :

  1. <img src="images/myimage.jpg">

url_escape

Échappement URI d'une chaîne, pour inclusion dans une URL.

Code :

  1. {{ 'This & that//' | url_escape }}

Sortie :

This+%26+that%2F%2F

xml_escape

Échappement XML d'une chaîne, pour inclusion dans la sortie XML.

Code :

  1. {{ '<p>test</p>' | xml_escape }}

Sortie :

<p>test</p>

Filtres de liste

Les filtres de liste permettent de gérer certaines valeurs d'attributs de liste d'entités et de créer des vues de liste.

current_sort

À partir d'une expression de tri, renvoie le sens de tri actuel pour un attribut donné.

Code :

  1. {{ 'name ASC, createdon DESC' | current_sort: 'createdon' }}

Sortie :

DESC

metafilters

Analyse une valeur JSON de définition de filtre de liste d'entités pour la transformer en objets de groupe d'options de filtre.

Les métafiltres peuvent être fournis en option avec une requête de filtre d'attribut actuel et une liste d'entités actuelle, permettant ainsi de marquer les objets de filtre renvoyés comme sélectionnés ou non.

Code :

  1. {% assign filters = entitylist | metafilters: params.mf, entityview %}
  2. {% if filters.size > 0 %}
  3.   <ul id=entitylist-filters>
  4.     {% for filter in filters %}
  5.       <li class=entitylist-filter-option-group>
  6.         {% if filter.selection_mode == 'Single' %}
  7.           {% assign type = 'radio' %}
  8.         {% else %}
  9.           {% assign type = 'checkbox' %}
  10.         {% endif %}
  11.         <h4 class=entitylist-filter-option-group-label
  12.           data-filter-id={{ filter.id | h }}>
  13.           {{ filter.label | h }}
  14.         </h4>
  15.         <ul>
  16.           {% for option in filter.options %}
  17.             <li class=entitylist-filter-option>
  18.               {% if option.type == 'text' %}
  19.                 <div class=input-group entitylist-filter-option-text>
  20.                   <span class=input-group-addon>
  21.                     <span class=fa fa-filter aria-hidden=true></span>
  22.                   </span>
  23.                   <input class=form-control
  24.                     type=text
  25.                     name={{ filter.id | h }}
  26.                     value={{ option.text | h }} />
  27.                 </div>
  28.               {% else %}
  29.                 <div class={{ type | h }}>
  30.                   <label>
  31.                     <input
  32.                       type={{ type | h }}
  33.                       name={{ filter.id | h }}
  34.                       value={{ option.id | h }}
  35.                       {% if option.checked %}
  36.                         checked=checked
  37.                         data-checked=true{% endif %}
  38.                       />
  39.                     {{ option.label | h }}
  40.                   </label>
  41.                 </div>
  42.               {% endif %}
  43.             </li>
  44.           {% endfor %}
  45.         </ul>
  46.       </li>
  47.     {% endfor %}
  48.   </ul>
  49.   <button class=btn btn-default data-serialized-query=mf data-target=#entitylist-filters>Appliquer des filtres</button>
  50. {% endif %}

reverse_sort

Étant donné un sens de tri, renvoie le sens de tri opposé.

Code :

  1. <!-- Le sens de tri n'est pas sensible à la casse -->
  2.  
  3. {{ 'ASC' | reverse_sort }}
  4.  
  5. {{ 'desc' | reverse_sort }}

Sortie :

DESC

ASC


Filtres mathématiques

Les filtres mathématiques permettent d'effectuer des opérations mathématiques sur des nombres.

Comme tous les filtres, ils peuvent être enchaînés et appliqués de gauche à droite.

Code :

  1. {{ 10 | times: 2 | minus: 5 | divided_by: 3 }}

Sortie :

5

ceil

Arrondit une valeur à l'entier supérieur le plus proche.

Code :

  1. {{ 4.6 | ceil }}
  2.  
  3. {{ 4.3 | ceil }}

Sortie :

5

5

divided_by

Divise un nombre par un autre.

Code :

  1. {{ 10 | divided_by: 2 }}
  2.  
  3. {{ 10 | divided_by: 3 }}
  4.  
  5. {{ 10.0 | divided_by: 3 }}

Sortie :

5

3

3.333333

floor

Arrondit une valeur à l'entier inférieur le plus proche.

Code :

  1. {{ 4.6 | floor }}
  2.  
  3. {{ 4.3 | floor }}

Sortie :

4

4

minus

Soustrait un nombre d'un autre nombre.

Code :

  1. <!-- entityview.page = 11 -->
  2.  
  3. {{ entityview.page | minus: 1 }}
  4.  
  5. {{ 10 | minus: 1.1 }}
  6.  
  7. {{ 10.1 | minus: 1 }}

Sortie :

10

9

9.1

modulo

Divise un nombre par un autre et renvoie le reste.

Code :

  1. {{ 12 | modulo: 5 }}

Sortie :

2

plus

Ajoute un nombre à un autre.

Code :

  1. <!-- entityview.page = 11 -->
  2.  
  3. {{ entityview.page | plus: 1 }}
  4.  
  5. {{ 10 | plus: 1.1 }}
  6.  
  7. {{ 10.1 | plus: 1 }}

Sortie :

12

11

11.1

round

Arrondit une valeur à l'entier le plus proche ou au nombre de décimales spécifié.

Code :

  1. {{ 4.6 | round }}
  2.  
  3. {{ 4.3 | round }}
  4.  
  5. {{ 4.5612 | round: 2 }}

Sortie :

5

4

4.56

times

Multiplie un nombre par un autre.

Code :

  1. {{ 10 | times: 2 }}
  2.  
  3. {{ 10 | times: 2.2 }}
  4.  
  5. {{ 10.1 | times: 2 }}

Sortie :

20

20

20.2


Filtres de chaîne

Les filtres de chaîne manipulent les chaînes.

append

Ajoute une chaîne à la fin d'une autre chaîne.

Code :

  1. {{ 'filename' | append: '.js' }}

Sortie :

filename.js

capitalize

Met en majuscules tous les mots d'une chaîne.

Code :

  1. {{ 'mets-moi une majuscule' | capitalize }}

Sortie :

Mets-Moi Une Majuscule

downcase

Convertit une chaîne en minuscules.

Code :

  1. {{ 'TExte en MAJuscules et minuscULES' | downcase }}

Sortie :

texte en majuscules et minuscules

newline_to_br

Insère une balise HTML de saut de ligne <br /> à chaque saut de ligne dans une chaîne.

Code :

  1. {% capture text %}
  2.  
  3. A
  4.  
  5. B
  6.  
  7. C
  8.  
  9. {% endcapture %}
  10.  
  11. {{ text | newline_to_br }}

Sortie :

  1. A<br />
  2.  
  3. B<br />
  4.  
  5. C<br />

prepend

Ajoute une chaîne au début d'une autre chaîne.

Code :

  1. {{ 'Jean St-Pierre' | prepend: 'Dr. ' }}

Sortie :

Dr. Jean St-Pierre

remove

Supprime toutes les occurrences d'une sous-chaîne d'une chaîne.

Code :

  1. {{ 'Bonjour, David. Comment vas-tu, David ?' | remove: 'David' }}

Sortie :

Bonjour, . Comment vas-tu, ?

remove_first

Supprime la première occurrence d'une sous-chaîne d'une chaîne.

Code :

  1. {{ 'Bonjour Dave. Comment vas-tu, Dave ?' | remove_first: 'Dave' }}

Sortie :

Bonjour . Comment vas-tu, Dave ?

replace

Remplace toutes les occurrences d'une chaîne par une sous-chaîne.

Code :

  1. {{ 'Bonjour Dave. Comment vas-tu, Dave ?' | replace: 'Dave', 'Jean' }}

Sortie :

Bonjour, Jean. Comment vas-tu, Jean ?

replace_first

Remplace la première occurrence d'une chaîne par une sous-chaîne.

Code :

  1. {{ 'Bonjour, Dave. Comment vas-tu, Dave ?' | replace_first: 'Dave', 'Jean' }}

Sortie :

Bonjour Jean. Comment vas-tu Dave ?

split

Le filtre de division prend une sous-chaîne comme paramètre. Cette sous-chaîne sert de délimiteur pour diviser une chaîne en un tableau.

Code :

  1. {% assign words = Ceci est une démonstration du filtre divisé | split: ' ' %}
  2.      
  3. Premier mot : {{ words.first }}
  4.  
  5. Premier mot : {{ words[0] }}
  6.  
  7. Deuxième mot : {{ words[1] }}
  8.  
  9. Dernier mot : {{ words.last }}
  10.  
  11. Tous les mots : {{ words | join: ', ' }}

Sortie :

Premier mot : Ceci

Premier mot : Ceci

Deuxième mot : est

Dernier mot : filtre

Tous les mots : Ceci, est, une, démonstration, du, filtre, divisé

strip_html

Supprime toutes les balises HTML d'une chaîne.

Code :

  1. {{ "<p>Bonjour</p>" | strip_html }}

Sortie :

Bonjour

strip_newlines

Supprime tous les sauts de ligne d'une chaîne.

Code :

  1. {% capture text %}
  2.  
  3. A
  4.  
  5. B
  6.  
  7. C
  8.  
  9. {% endcapture %}
  10.  
  11. {{ text | strip_newlines }}

Sortie :

ABC

text_to_html

Formate une chaîne de texte brut en HTML simple. Le texte est codé en HTML, les blocs de texte séparés par une ligne vide sont entourés de balises de paragraphe <p>, les sauts de ligne sont remplacés par <br> et les URL sont converties en hyperliens.

Code :

  1. {{ note.notetext | text_to_html }}

Sortie :

  1. <p>Ceci est le premier paragraphe du texte de la note. Il contient une URL : <a href="https://example.com/" rel="nofollow">https://example.com</a></p>
  2.  
  3. <p>Ceci est un deuxième paragraphe.</p>

truncate

Tronque une chaîne à un nombre donné de caractères. Un point de suspension (...) est ajouté à la chaîne et est inclus dans le nombre de caractères.

Code :

  1. {{ "Il s'agit d'un long texte." | truncate: 10 }}

Sortie :

Il s'agit...

truncate_words

Tronque une chaîne jusqu'à un nombre de mots donné. Des points de suspension (...) sont ajoutés à la chaîne tronquée.

Code :

  1. {{ "Il s'agit d'un long texte." | truncate_words: 3 }}

Sortie :

Il s'agit d'un...

upcase

Convertit une chaîne en majuscules.

Code :

  1. {{ 'Texte en Majuscules et MINuscules' | upcase }}

Sortie :

TEXTE EN MAJUSCULES ET MINUSCULES

Filtres de type

Les filtres de type vous permettent de convertir des valeurs d'un type en d'autres types.

boolean

Tente de convertir une valeur de chaîne en valeur booléenne. Si la valeur est déjà booléenne, elle est renvoyée sans modification. Si la valeur ne peut pas être convertie en valeur booléenne, la valeur null est renvoyée.

Ce filtre accepte également les valeurs «on», «enabled» ou «yes» comme vraies, et les valeurs «off», «disabled» et «no» comme fausses.

Code :

  1. {{ true | boolean }}
  2.  
  3. {{ 'false' | boolean }}
  4.  
  5. {{ 'enabled' | boolean }}
  6.  
  7. {{ settings['something/enabled'] | boolean | default: false }}

Sortie :

true

false

true

false

decimal

Tente de convertir une valeur de chaîne en nombre décimal. Si la valeur est déjà un nombre décimal, elle est renvoyée sans modification. Si la valeur ne peut pas être convertie en nombre décimal, la valeur null est renvoyée.

Code :

  1. {{ 10.1 | decimal }}
  2.  
  3. {{ '3.14' | decimal }}
  4.  
  5. {{ 'text' | decimal | default: 3.14 }}

Sortie :

10.1

3.14

3.14

integer

Tente de convertir une valeur de chaîne en entier. Si la valeur est déjà un entier, elle est renvoyée sans modification. Si la valeur ne peut pas être convertie en entier, la valeur null est renvoyée.

Code :

  1. {{ 10 | integer }}
  2.  
  3. {{ '10' | integer }}
  4.  
  5. {{ '10.1' | integer }}
  6.  
  7. {{ 'text' | integer | default: 2 }}

Sortie :

10

10

2

string

Tente de convertir une valeur en sa représentation sous forme de chaîne. Si la valeur est déjà une chaîne, elle est renvoyée sans modification. Si la valeur est nulle, la valeur nulle est renvoyée.



Filtres d'URL

Les filtres d'URL vous permettent de créer ou d'extraire des parties d'URL.

add_query

Ajoute un paramètre de chaîne de requête à une URL. Si le paramètre existe déjà dans l'URL, sa valeur est mise à jour.

Si ce filtre est appliqué à une URL absolue complète, le résultat est une URL absolue mise à jour. S'il est appliqué à un chemin, le résultat est un chemin mis à jour.

Code :

  1. {{ 'https://example.com/path?page=1' | add_query: 'foo', 'bar' }}
  2.  
  3. {{ '/path?page=1' | add_query: 'page', 2 }}

Sortie :

https://example.com/path?page=1&foo=bar

/path?page=2

base

Obtient l'URL de base d'une URL donnée.

Code :

  1. {{ 'https://example.com/path?foo=bar&page=2' | base }}

Sortie :

https://example.com

host

Obtient la partie hôte d'une URL.

Code :

  1. {{ 'https://example.com/path?foo=bar&page=2' | host }}

Sortie :

example.com

path

Récupère le chemin d'accès d'une URL.

Code :

  1. {{ 'https://example.com/path?foo=bar&page=2' | path}}
  2.  
  3. {{ '/path?foo=bar&page=2' | path }}

Sortie :

/path

/path

path_and_query

Obtient le chemin et la partie requête d'une URL.

Code :

  1. {{ 'https://example.com/path?foo=bar&page=2' | path_and_query }}
  2.  
  3. {{ '/path?foo=bar&page=2' | path_and_query }}

Sortie :

/path?foo=bar&page=2

/path?foo=bar&page=2

port

Obtient le numéro de port d'une URL.

Code :

  1. {{ 'https://example.com/path?foo=bar&page=2' | port }}
  2.  
  3. {{ 'https://example.com/path?foo=bar&page=2' | port }}
  4.  
  5. {{ 'https://example.com:9000/path?foo=bar&page=2' | port }}

Sortie :

80

443

9000

remove_query

Supprime un paramètre de chaîne de requête d'une URL. Si le paramètre n'existe pas dans l'URL, l'URL est renvoyée sans modification.

Si ce filtre est appliqué à une URL absolue complète, le résultat est une URL absolue mise à jour. S'il est appliqué à un chemin, le résultat est un chemin mis à jour.

Code :

  1. {{ 'https://example.com/path?page=1' | remove_query: 'page' }}
  2.  
  3. {{ '/path?page=1' | remove_query: 'page' }}

Sortie :

https://example.com/path

/path

scheme

Obtient la partie schéma d'une URL.

Code :

  1. {{ 'https://example.com/path?foo=bar&page=2' | scheme }}
  2.  
  3. {{ 'https://example.com/path?foo=bar&page=2' | scheme }}

Sortie :

http

https


Filtres supplémentaires

Ces filtres offrent des fonctionnalités générales utiles.

default

Renvoie une valeur par défaut pour toute variable sans valeur assignée (c'est-à-dire nulle).

Code :

  1. {{ snippets[Header] | default: 'Mon Site Web' }}

Sortie :

  1. <!-- Si un extrait avec le nom Header renvoie null -->
  2.  
  3. Mon Site Web

file_size

Appliqué à une valeur numérique représentant plusieurs octets, il renvoie une taille de fichier formatée avec une unité d'échelle appropriée.

Un paramètre de précision peut éventuellement être défini pour contrôler le nombre de décimales du résultat. La précision par défaut est de 1.

Code :

  1. {{ 10000000 | file_size }}
  2.  
  3. {{ 2050 | file_size: 0 }}
  4.  
  5. {{ entity.notes.first.filesize | file_size: 2 }}

Sortie :

9.5 MB

2 KB

207.14 KB

h

Fournit une représentation HTML d'un attribut. Par exemple, une représentation HTML de l'attribut XML de la requête FetchXML.

Code :

  1. {{ samplequery.xml | h }}

Sortie :

  1. <fetch mapping="logical" count="5000" page="1" returntotalrecordcount="true"> <entity name="contact"> <attribute name="fullname" /> </entity> </fetch>

has_role

Appliqué à un utilisateur, renvoie «true» si l'utilisateur appartient au rôle donné. Renvoie «false» dans le cas contraire.

Code :

  1. {% assign is_admin = user | has_role: 'Administrateurs' %}
  2.  
  3. {% if is_admin %}
  4.  
  5. L'utilisateur est un administrateur.
  6.  
  7. {% endif %}

liquid

Restitue une chaîne sous forme de code Liquid. Ce code a accès au contexte d'exécution Liquid actuel (variables,...).

Remarque : Ce filtre doit être utilisé avec prudence et ne doit généralement être appliqué qu'aux valeurs sous le contrôle exclusif des auteurs du contenu du site ou d'autres utilisateurs de confiance pour écrire du code Liquid.

Code :

  1. {{ page.adx_copy | liquid }}


Dernière mise à jour : Vendredi, le 18 juillet 2025