新月 - P2P掲示板

朔のテンプレート

朔 4.0.0以降では Jinja2 というテンプレートエンジンを使って、出力するHTMLを生成しています (一部例外があります)。 一般的な書式は Jinja2 documentation を見てもらうとして、 どんな変数を定義しているのかを説明します。

テンプレートは template ディレクトリにあります。 書き換えると朔の再起動なしに反映します。

どのテンプレートでも使える変数

cgi (オブジェクト)
呼び出し側のLightCGIオブジェクト。
environ (文字列の辞書)
LightCGIの環境変数。
ua (文字列)
UserAgentの文字列。携帯電話ではこれを見て分岐を書くことになるかも。
message (文字列の辞書)
file/message-*.txtで指定するメッセージの辞書。
lang (文字列)
どの言語で出力するか。デフォルトではja(日本語)とen(英語)のみ。
config (オブジェクト)
設定ファイルによる設定項目。
appli (文字列の辞書)
アプリケーションとCGIの対応表。 現在は {'thread': '/thread.cgi'} のみ。
gateway_cgi, thread_cgi, admin_cgi, mobile_cgi (文字列)
各種CGIのURLのパス部分。'/thread.cgi' など。
root_path (文字列)
ルートのURLのパス部分。 デフォルトでは / 。
archive_uri (文字列)
保管庫のURL。設定していなければ空文字列。 gateway.cgi等では保管庫のルート、 thread.cgi等ではそのスレッドの保管庫を指す。
types (文字列の配列)
どんなアプリケーションがあるか。現在はthreadのみ。
isadmin, isfriend, isvisitor (bool変数)
アクセスした人がその権限を持つかどうか。
localtime (関数)
整数を YYYY-mm-dd HH:MM 形式に整形する。
str_encode (関数)
URLエンコード。
file_decode (関数)
ファイル名→タイトルの変換。
escape (関数)
タグ等のHTMLエスケープ。 ♥はそのままなど、ちょっと特殊。
escape_simple (関数)
タグ等のHTMLエスケープ。
escape_space (関数)
タグ等のHTMLエスケープに加え、 連続するスペースが表示されるようにする。
make_list_item (関数)
gateway.cgi で各スレッドへのリンクを生成する。
gateway_link (関数)
gateway.cgi で最終更新等へのリンクを生成する。

各テンプレートに固有の変数

各テンプレートを見てください。

Copyright© 2003-2017 shinGETsu Project. All Rights Reserved.
webmaster@shingetsu.info (Legal Notices)