Dernière modification : 28 août 2025
Les boucles for peuvent être utilisées dans HubL pour itérer dans des séquences d’objets. Elles seront le plus souvent utilisées pour rendre le contenu du blog dans un format de liste, mais elles peuvent également être utilisées pour trier d’autres variables de séquence.
Les boucles for commencent par une fonction {% for %}
et se terminent par une fonction {% endfor %}
. Dans la fonction {% for %}
, un seul élément de séquence est nommé, suivi de in
, puis du nom de la séquence. Le code entre les fonctions for
d’ouverture et de fermeture est imprimé à chaque itération, et comprend généralement la variable imprimée de l’élément de séquence individuel. Vous trouverez ci-dessous la syntaxe de base d’une boucle for :
Propriétés de boucle
Lorsqu’une boucle est itérative, vous pouvez utiliser la logique conditionnelle pour définir son comportement. La propriété de variableloop.index
tient un compte du nombre actuel d’itérations de la boucle. Il existe plusieurs autres propriétés de variable de boucle qui comptabilisent les itérations de différentes manières. Ces propriétés sont décrites ci-dessous :
Variable | Description |
---|---|
loop.cycle | Une fonction d’aide pour faire un cycle entre une liste de séquences. Consultez l’explication ci-dessous. |
loop.depth | Indique à quelle profondeur d’une boucle récursive se trouve actuellement le rendu. Commence au niveau 1. |
loop.depth0 | Indique à quelle profondeur d’une boucle récursive se trouve actuellement le rendu. Commence au niveau 0. |
loop.first | Cette variable est définie sur true s’il s’agit de la première itération de la boucle. |
loop.index | L’itération actuelle de la boucle. Cette variable commence la comptabilisation à 1. |
loop.index0 | L’itération actuelle de la boucle. Cette variable commence la comptabilisation à 0. |
loop.last | Cette variable est définie sur true s’il s’agit de la dernière itération de la boucle. |
loop.length | Le nombre d’éléments dans la séquence. |
loop.revindex | Le nombre d’itérations à partir de la fin de la boucle. Compte à rebours jusqu’à 1. |
loop.revindex0 | Le nombre d’itérations à partir de la fin de la boucle. Compte à rebours jusqu’à 0. |
loop.index
pour conserver un compte qui est imprimé à chaque itération.
divisible par
certains nombres. La largeur de la division est alors restituée en conséquence. L’exemple utilise la boucle standard des articles de blog et suppose qu’il y a 6 articles dans la boucle.
Boucles imbriquées
Les boucles peuvent également être imbriquées dans d’autres boucles. La boucle for enfant sera exécutée à chaque itération de la boucle for parent. Dans l’exemple ci-dessous, une liste d’éléments enfants est imprimée dans un élément<ul>
imbriqué dans un élément <ul>
d’éléments parents.
cycle
La balise cycle peut être utilisée dans une boucle for pour parcourir une série de valeurs de chaîne et les imprimer à chaque itération. L’une des applications les plus pratiques de cette technique consiste à appliquer des classes alternées à vos articles de blog dans une liste. Cette balise peut être utilisée sur plus de deux valeurs et répétera le cycle s’il y a plus d’itérations de boucle que de valeurs de cycle. Dans l’exemple ci-dessous, une classe d’élémentsodd
et even
est appliquée aux articles d’une liste (l’exemple suppose qu’il y a 5 articles dans la boucle).
Veuillez noter qu’il n’y a pas d’espace entre les valeurs des chaînes de cycle séparées par des virgules.
Variables dans les boucles
Toutes les variables définies dans les boucles sont limitées à la portée de cette boucle et ne peuvent pas être exécutées depuis l’extérieur de la boucle.
Paires (clé, valeur) dans les boucles
Si le dictionnaire d’informations que vous parcourez en boucle comporte des paires (clé, valeur), une simple boucle for n’aurait accès qu’aux valeurs. Si vous souhaitez avoir accès à la fois aux clés et aux valeurs dans la boucle for, le HubL sera formaté comme suit :Itérer un nombre défini de fois
Parfois, vous souhaitez itérer un nombre défini de fois, ce qui peut être utile pour générer du HTML ou des CSS. Pour ce faire, vous pouvez utiliser la fonction de plage.Utilisation des balises HubL dans des boucles
Lorsque vous ajoutez une balise à une page, HubSpot attribue automatiquement unid
au HTML d’encadrement. Cette balise est unique par nom de balise. Si vous devez utiliser une balise dans une boucle for, la définition de noms uniques n’est pas pratique. Ajoutez le paramètre unique_in_loop
à votre balise pour générer des identifiants uniques. Ce paramètre ajoute le nom du module au numéro d’itération de la boucle en cours, ce qui garantit qu’il est unique. Les identifiants uniques ne sont pas seulement nécessaires à la validité du code HTML. Ils sont également importants pour l’accessibilité.