全コンテンツで共通のコンテキスト
query
現在の URL のクエリパラメータを取得します。
利用例:
{{ query.keyword }}
URL が https://example.com/?keyword=apple
の場合、apple
が出力されます。
body
POST されたデータ(リクエストボディ)を取得します。
利用例:
{{ body.email }}
フォームから email
が送信されている場合、その値が取得されます。
props
親コンテンツから渡されたプロパティを取得します。
親コンテンツの例:
@include: 'child_id' with {
props: { title: 'ようこそ!' }
}
子コンテンツの例:
<h1>{{ props.title ?? 'デフォルトのタイトル' }}</h1>
now
現在時刻(Unix Time, 秒単位)を返します。
利用例:
{{ date(now, 'Y/m/d') }}
現在日付を 2025/08/05
のように出力します。
date
指定した Unix Time をフォーマット文字列に従って日時に変換します。
シグネチャ:
date( timestamp: int, format: string ): string
利用例:
{{ date(record.regist_unix, 'Y/m/d H:i:s') }}
to_unix_time
日時文字列を Unix Time に変換します。
シグネチャ:
to_unix_time( datetime_string: string ): int
利用例:
let unix = to_unix_time('2025/07/01 12:00');
rand
指定した範囲内のランダムな整数を生成します。
シグネチャ:
rand( min: int, max: int ): int
利用例:
{{ rand(0, 100) }}
escape
HTML をエスケープします。 主に文字列連結で HTML を生成する際に利用します。
シグネチャ:
escape( html: string ): string
利用例:
{{ '<div>' + escape(value) + '</div>' | raw }}
encode_url
URL で利用可能な文字列に変換します。
シグネチャ:
encode_url( value: string ): string
利用例:
<a href="/search?keyword={{ encode_url(keyword) }}">検索</a>
encode_json
値を JSON 形式の文字列に変換します。
シグネチャ:
encode_json( value: mixed ): string
利用例:
let obj = { a: 1, b: 2 };
let json = encode_json(obj);
decode_json
JSON 文字列をオブジェクトや配列に変換します。
シグネチャ:
decode_json( json_string: string ): mixed
利用例:
let obj = decode_json('{"a":1}');
{{ obj.a }}
url
静的 URL 設定が有効の場合、相対パスを絶対 URL に変換します。
フロントエンド URL を設定している場合は、フロントエンド URL から始まる絶対 URL になります。
静的 URL 設定が無効の場合は何も変換しません。
シグネチャ:
url( path: string ): string
利用例:
<script src="{{ url('./file/box/script.js') }}"></script>
site
サイト全体のメタデータを保持するオブジェクトです。
プロパティ:
base_url
index_url
frontend_url
logout_url
no_image
logo
title
copyright
google_map_api_key
利用例:
<title>{{ site.title }}</title>
<img src="{{ site.logo }}">
{{ site.copyright | raw }}
page
現在のページのメタデータを保持します。
プロパティ:
canonical_url
path
利用例:
<link rel="canonical" href="{{ page.canonical_url }}">
{{ page.path->split('/')->join(' > ') }}
content
現在のコンテンツのメタデータを保持します。
プロパティ:
id
category
page_id
name
http_header_content_type
url
edit_unix
regist_unix
利用例:
{{ content.name }}
content_by
指定したコンテンツ ID のメタデータを取得します。
シグネチャ:
content_by( page_id: string ): object
利用例:
{{ content_by('about').edit_unix }}
is_debug
デバッグモードかどうかの真偽値を返します。
利用例:
@if (is_debug)
{{ 'テスト環境専用メッセージ' }}
@endif