Think Twice
IT技術メモ | Liquidのメモ
Created: 2021-09-05 / Updated: 2021-09-08

Liquidの紹介


Liquidはオブジェクトとタグとフィルターを使ってテンプレートファイルを動的な表示コンテンツを作成するツールです。

目次


オブジェクト

オブジェクトはLiquidがページに表示する内容の入れ物です。
オブジェクトと変数は二重の波括弧({{}})に値を評価され出力されます。

Input
Copy
{{ page.title }}
Output
Copy
Liquidの紹介

この例の場合、Liquidはpageオブジェクトのtitleプロパティの内容を出力します。 それは "Liquidの紹介" という内容のテキストです。

タグ

タグはテンプレート内でロジックは制御フローを生成します。
波括弧とパーセント({%%})で囲んだ内容は最終的には何も出力されません。
ここの中では、変数に値を設定し、条件やループを生成することになります。

Input
Copy
{% if user %}
  Hello {{ user.name }}!
{% endif %}
Output
Copy
  Hello fumo!

タグは色々なタイプに分類されます。

詳細はまたあとで書きます。

フィルター

フィルターはLiquidのオブジェクトや変数の出力結果を変換します。関数みたいなものと考えてもらえるといいと思います。
フィルターは二重波括弧内で使い、パイプ(|)で区切って変数などに適用して行きます。

Input
Copy
{{ "/my/fancy/url" | append: ".html" }}
Output
Copy
/my/fancy/url.html

一つに出力に対して複数のフィルターが使用されることもあります。適用順は左から右です。

Input
Copy
{{ "fumo!" | capitalize | prepend: "Hello " }}

Output
Copy
Hello Fumo!

この例では、まず "fumo!" という文字列の先頭を大文字にして、その後 "Hello " という文字列を頭にくっつけています。

利用可能な主なフィルターはこちらで紹介しています。


参考

参照