LinkSearchMenuExpandDocument
Table of contents

JekyllのLiquidについて

Tag Cloud

タグクラウドの生成

Liquid:

{% assign tags = site.tags | sort %}
<ul>
{% for tag in tags %}
  <li>
    {{ tag | first }} -- {{ tag | last | size }}
  </li>
{% endfor %}
</ul>

Output:

<ul>
  <li>TAG1 -- 2</li>
  <li>TAG2 -- 1</li>
</ul>

Liquid:

{% assign tags = site.tags | sort %}
{% for tag in tags %}
    {{ tag | inspect }}
{% endfor %}

inspectフィルタは、オブジェクトを文字列表現に変換する。

Output:

["TAG1", [
  #<Jekyll::Document _posts/2020-08-13-TAG1-post.md collection=posts>,
  #<Jekyll::Document _posts/2020-07-04-TAG1-post.md collection=posts>
]]
["TAG2", [
  #<Jekyll::Document _posts/2020-08-04-TAG2-post.md collection=posts>
]]

乱数を生成する

{% capture time_seed %}{{ 'now' | date: "%s" }}{% endcapture %}
{% assign random = time_seed | times: 1103515245 | plus: 12345 | divided_by: 65536 | modulo: 32768 | modulo: 10 %}

引用元: This is how I generate random numbers with liquid ;-)(community.shopify.com) [EN]

ファイルの存在を確認

{% for static_file in site.static_files %}
  {% if static_file.path == '/favicon.ico' %}
    {% assign favicon = true %}
  {% endif %}
{% endfor %}

引用元: template - Jekyllを使ってファイルの存在を確認する(Code examples)

ページへのリンク作成

ファイルの元々の拡張子を含める必要がある。

[Link to a document]({% link _collection/name-of-document.md %})

ポストへのリンク作成

ファイルの拡張子を含める必要はない。

[Name of Link]({% post_url 2010-07-21-name-of-post %})

数の演算

数の演算する際に利用できるLiquidフィルタ

  • 加算: plus
  • 減算: minus
  • 乗算: times
  • 除算: divided_by (結果は最も近い整数に切り捨て)

    除数と同じタイプの結果を生成する。 浮動小数点数で除算すると、結果も浮動小数点数になります。

    {% assign my_integer = 7 %}
    {% assign my_float = my_integer | times: 1.0 %}
    {{ 20 | divided_by: my_float }}
    

    my_integerを1.0で乗算して、浮動小数点数に変換することで結果を浮動小数点数で得られます。

  • 除算の余り: modulo
  • 値の丸め: round (四捨五入)

    引数の値で、小数点以下の桁数に丸め (デフォルトは整数で丸め)

    フィルターが適用される前に、入力を数値に変換しようとします。

  • 端数の切り上げ: ceil
  • 端数の切り捨て: floor

Liquidタグの表示

Liquidタグ自身を表示させたい場合、{% raw %} と {% endraw %}で囲みます。

Back to top


Back to top

Copyright © 2021 Otti

Page last modified: