October étend le moteur de template Twig avec un certain nombre de fonctions, balises, filtres et variables. Ces extensions vous permettent d'utiliser les fonctionnalités du CMS et d'accéder aux informations d'environnement de la page dans vos vues.
Les variables sont affichées sur la page à l'aide des doubles accolades.
{{ variable }}
Les variables peuvent également représenter des expressions.
{{ isAjax? 'Oui' : 'Non' }}
Les variables peuvent être concaténées avec le caractère ~
.
{{ 'Votre nom: ' ~ nom }}
October fournit des variables globales sous la variable this
, comme indiqué dans la section Variables.
Les balises sont une caractéristique unique de Twig et sont entourées de caractères {% %}
.
{% balise %}
Les balises fournissent un moyen plus fluide pour décrire la logique de la vue.
{% if nuageOrageuxArrive %}
Rester à l'intérieur
{% else %}
Allez dehors et profitez du beau temps
{% endif %}
La balise {% set %}
peut être utilisée pour définir des variables à l'intérieur de la vue.
{% set pageActive = 'blog' %}
Les balises peuvent prendre de nombreuses syntaxes différentes et sont répertoriées dans la section Balises.
Les filtres agissent comme des modificateurs de variables pour une seule instance et sont appliqués à l'aide d'une barre verticale |
suivi du nom du filtre.
{{ 'chaîne de caractères'|filtre }}
Les filtres peuvent prendre des arguments comme une fonction.
{{ prix|currency('USD'))}}
Les filtres peuvent être appliqués successivement.
{{ 'Gloire à October'|upper|replace({'October': 'Matin'}) }}
Les filtres sont répertoriés dans la section Filtres.
Les fonctions permettent à la logique d'être exécutée et le résultat renvoyé agit comme une variable.
{{ fonction() }}
Les fonctions peuvent accepter des arguments.
{{ dump(variable) }}
Les fonctions sont répertoriées dans la section Fonctions.
La chose la plus importante à apprendre sur Twig est de savoir comment il accède à la couche PHP.
Pour des raisons de commodité, {{ toto.titi }}
effectue les vérifications suivantes sur un objet PHP :
- Vérifie si
toto
est un tableau ettiti
un élément valide. - Sinon, si
toto
est un objet, vérifie quetiti
est une propriété valide. - Sinon, si
toto
est un objet, vérifie quetiti
est une méthode valide (même si titi est le constructeur, utilisez plutôt__construct()
). - Sinon, si
toto
est un objet, vérifie quegetTiti
est une méthode valide. - Sinon, si
toto
est un objet, vérifie queisTiti
est une méthode valide. - Sinon, renvoi une valeur
null
.
Il y a certaines fonctionnalités offertes par Twig qui ne sont pas prises en charge dans October. Elles sont répertoriées ci-dessous à côté de la fonctionnalité équivalente.
Tag | Équivalent |
---|---|
{% extend %} |
Utilisez des Maquettes ou {% placeholder %} |
{% include %} |
Utilisez {% partial %} ou {% content %} |