twigについて(テンプレートエンジン)

twigはPHPのテンプレートエンジンです。

テンプレートについてでご紹介したpage.html.twigのテンプレートでどのようにtwigが利用されているかご紹介します。

{{変数}}:変数を出力する
{{%関数%}:関数の処理を行う

例えば下記の記述は変数page.primary_menuを出力、つまりリージョンのprimary_menuを出力します。

{{ page.primary_menu }}

 

また、下記の記述はif文を使った事例です。

page.footerが存在するなら、fotterにroleを設定し、リージョンのpage.footerを出力します。

{% if page.footer %}
    <footer role="contentinfo">
      {{ page.footer }}
    </footer>
  {% endif %}

 

下記の記述は追加でfor文を使った事例をご紹介します。

for文はループ処理を行います。PHPのforeachに相当します。 select文の中で変数termsから受け取った内容がtermに反映され、termの内容がoptionで選択できるようになります。 optionのidとnameを{{term.id}}、{{term.name.value}}で出力しています。

<select id="project" name="project">
  {% for term in terms %}
  <option value=""{{term.id}}"">{{term.name.value}}</option>
  {% endfor %}
  < select>