グローバル変数

Craft の Twig テンプレートで利用可能なグローバル変数は、以下の通りです。

変数 説明
_self 現在のテンプレート名。
_context 現在定義されている変数。
_charset 現在の文字コード。
craft craft\web\twig\variables\CraftVariable オブジェクト。
currentSite リクエストされたサイト。
currentUser 現在ログインしているユーザー。
devMode Dev Mode が有効かどうか。
Global set variables 各グローバル設定の変数。
loginUrl フロントエンドのログインページの URL。
logoutUrl フロントエンドのログアウトページの URL。
now 現在の日/時。
POS_BEGIN 定数 craft\web\View::POS_BEGIN
POS_END 定数 craft\web\View::POS_END
POS_HEAD 定数 craft\web\View::POS_HEAD
POS_LOAD 定数 craft\web\View::POS_LOAD
POS_READY 定数 craft\web\View::POS_READY
siteName 現在のサイトの名前。
siteUrl 現在のサイトのベース URL。
SORT_ASC PHP 定数 SORT_ASC
SORT_DESC PHP 定数 SORT_DESC
SORT_FLAG_CASE PHP 定数 SORT_FLAG_CASE
SORT_LOCALE_STRING PHP 定数 SORT_LOCALE_STRING
SORT_NATURAL PHP 定数 SORT_NATURAL
SORT_NUMERIC PHP 定数 SORT_NUMERIC
SORT_REGULAR PHP 定数 SORT_REGULAR
SORT_STRING PHP 定数 SORT_STRING
systemName システム名。
view アプリの view コンポーネント。

# craft

様々なヘルパーファンクションやオブジェクトのアクセスポイントを提供する craft\web\twig\variables\CraftVariable オブジェクト。

# craft.app

craft\web\Application インスタンス(PHP コード内で Craft::$app と記述したときに取得できるもの)への参照は、craft.app 経由でテンプレートでも利用可能です。

craft.app 経由でアクセスすることは、先進的であると考えられます。他の Twig 特有の変数やファンクションよりもセキュリティの上で意味があります。さらに、Craft のメジャーバージョン間で生じる互換性を破る変更に、テンプレートを反応させやすくするでしょう。

{% set field = craft.app.fields.getFieldByHandle('body') %}

# currentSite

craft\models\Site オブジェクトで表される、リクエストされたサイト。

{{ currentSite.name }}

現在のサイトと同じグループのすべてのサイトは、currentSite.group.sites 経由でアクセスできます。

<nav>
    <ul>
        {% for site in currentSite.group.sites %}
            <li><a href="{{ alias(site.baseUrl) }}">{{ site.name }}</a></li>
        {% endfor %}
    </ul>
</nav>

# currentUser

craft\elements\User オブジェクトで表される、現在ログインしているユーザー。誰もログインしていない場合は、null

{% if currentUser %}
    Welcome, {{ currentUser.friendlyName }}!
{% endif %}

# devMode

コンフィグ設定 devMode が現在有効になっているかどうか。

{% if devMode %}
    Craft is running in dev mode.
{% endif %}

# loginUrl

loginPath コンフィグ設定に基づく、サイトのログインページの URL。

{% if not currentUser %}
    <a href="{{ loginUrl }}">Login</a>
{% endif %}

# logoutUrl

logoutPath コンフィグ設定に基づく、Craft ユーザーのログアウト URL。ここに遷移した後、Craft はユーザーをホームページへ自動的にリダイレクトします。「ログアウト ページ」といったものはありません。

{% if currentUser %}
    <a href="{{ logoutUrl }}">Logout</a>
{% endif %}

# now

現在の日付と時刻がセットされた DateTime オブジェクト。

Today is {{ now|date('M j, Y') }}.

# POS_BEGIN

定数 craft\web\View::POS_BEGIN の Twig 対応のコピー。

# POS_END

定数 craft\web\View::POS_END の Twig 対応のコピー。

# POS_HEAD

定数 craft\web\View::POS_HEAD の Twig 対応のコピー。

# POS_LOAD

定数 craft\web\View::POS_LOAD の Twig 対応のコピー。

# POS_READY

定数 craft\web\View::POS_READY の Twig 対応のコピー。

# siteName

「設定 > サイト」で定義されている、サイトの名前。

<h1>{{ siteName }}</h1>

# siteUrl

サイトの URL。

<link rel="home" href="{{ siteUrl }}">

# SORT_ASC

PHP 定数 SORT_ASC の Twig 対応のコピー。

# SORT_DESC

PHP 定数 SORT_DESC の Twig 対応のコピー。

# SORT_FLAG_CASE

PHP 定数 SORT_FLAG_CASE の Twig 対応のコピー。

# SORT_LOCALE_STRING

PHP 定数 SORT_LOCALE_STRING の Twig 対応のコピー。

# SORT_NATURAL

PHP 定数 SORT_NATURAL の Twig 対応のコピー。

# SORT_NUMERIC

PHP 定数 SORT_NUMERIC の Twig 対応のコピー。

# SORT_REGULAR

PHP 定数 SORT_REGULAR の Twig 対応のコピー。

# SORT_STRING

PHP 定数 SORT_STRING の Twig 対応のコピー。

# systemName

「設定 > 一般」で定義されている、システム名。

# view

テンプレートを駆動している craft\web\View インスタンスへの参照。

# グローバル設定の変数

それそれのサイトのグローバル設定は、ハンドルにちなんで命名されたグローバル変数としてテンプレートで利用可能です。

それらは craft\elements\GlobalSet オブジェクトとして表されます。

<p>{{ companyInfo.companyName }} was established in {{ companyInfo.yearEstablished }}.</p>