Geeklog IvySOHOプロジェクト
Geeklog Documentation

テーマで使える変数

注意:この文書はテーマ変数に関する完全な文書ではなく、記事テンプレートやサイトヘッダで使われる変数を扱っているに過ぎません。

はじめに

GeeklogはPHP Base Library(PHPlib)のテンプレートエンジンを使っています。このライブラリはテンプレートファイルで変数を使うことを許しています。{変数名}というように括弧に囲まれた単語が変数です。GeeklogがWebページを生成する時にテンプレートファイルにある変数を特定の値に変換します。変数は(常に同じテキストに置き換えられる)固定テキスト、(記事に対するコメントの数や記事の全体テキスト)といった動的な内容、あるいは(例えばリストで使われる)他のテンプレートの内容などが入れられます。

全ての変数が全てのテンプレートで利用できるわけでない点に注意してください。自分のGeeklogサイトのURL:{site_url}変数はほとんどのテンプレートで使えますが、多くの変数はたった一つのテンプレートだけで使えるに過ぎません(例えば{formatted_article}変数はarticle.htmlテンプレートファイルでのみ使えます)。Geeklogは現在のテンプレートで定義されていない全ての変数を空文字に置き換えます。定義されていない変数を使ってもエラーや警告メッセージは生成されません。

サイトヘッダ

次の変数がサイトヘッダテンプレート(header.thtml)で利用可能です。

変数説明
site_url http://www.example.com サイトのURL(config.phpファイルの$_CONF['site_url'] で指定された値)
layout_url http://www.example.com/layout/XSilver ユーザの現在のテーマのレイアウトフォルダのURL
page_title Geeklog Site - Another Nifty Geeklog Site サイト名とスローガンの組み合わせかサイト名と現在の記事のタイトルのどちらか保持
background_image http://www.example.com/layout/
XSilver/images/bg.gif
背景画像として使われる現在のテーマの画像フォルダにあるbg.gifへのURL
site_mail admin@example.com サイト管理者へのコンタクトに利用する電子メールアドレス。スパム問題があるので、この変数に管理者のアドレスを設定せずに代わりに次のような管理者への投稿フォームへのリンクの提供を推奨します。
{site_url}/profiles.php?uid=2(2はメールを受け取るユーザのIDで通常は管理者となります)
site_name Geeklog Site サイトの名前
site_slogan Another Nifty Geeklog Site サイトのスローガン
welcome_msg Welcome to Geeklog Site ユーザ名の次に続くウェルカムメッセージ(登録ユーザのため)
datetime Thursday, November 28 2002 @ 11:43 AM PST 現在の日時を$_CONF['date']に従ってフォーマットしたもの
site_logo http://www.example.com/layout/
XSilver/images/logo.gif
サイトのロゴとして使われる現在のテーマの画像ディレクトリのlogo.gifへのリンク
css_url http://www.example.com/layout/
XSilver/style.css
現在のテーマのスタイルシートへのリンク
theme XSilver 現在のテーマ名
charset iso-8859-1 現在の言語ファイルの文字コード
The character set for the current language file.
rss_url http://www.example.com/backend/geeklog.rdf サイトのRSSフィード用URLを示します({rdf_filel}と同じ)。この変数はfooter.thtmlでも利用可能
rdf_file http://www.example.com/backend/geeklog.rdf サイトのRSSフィード用URLを示します({rss_url}と同じ)。この変数はfooter.thtmlでも利用可能

記事

次の変数がstorytext.thtml、storybodytext.thtml, featuredstorytext.html、featuredstorybodytext.thtml、archivestorytext.thtml、archivestorybodytext.thtmlテンプレートファイルで利用できます。これらのファイルは、各記事の単独ページの表示に使われるarticle/article.thtmlファイルの{formatted_article}変数の内容と同様indexページで記事を表示する時に使われます。

変数説明
site_url http://www.example.com サイトのURL(config.phpファイルの$_CONF['site_url']に設定されているものと同一)
layout_url http://www.example.com/layout/XSilver ユーザの現在のテーマのレイアウトディレクトリへのURL
story_date Tuesday, October 22 2002 @ 11:50 PM PDT ユーザの選んだ書式の記事の日時
lang_views Views ユーザの選んだ言語の"View"という単語
story_hits 42 記事が読まれた回数
article_url http://www.geeklog.net/article.php?story=20021022234959146 記事ページ(article.php)へのフルURL。URLリライトが有効時も正しいURLを反映します
story_id 20021022234959146 記事のID("link to this story"リンクを生成する時に使われる)
story_title Welcome to Geeklog! 記事のタイトル
story_introtext Welcome and let me be the first to congratulate you on installing GeekLog ... indexページで表示された場合は記事の導入テキストを、単独記事ページで表示された場合は導入テキストと本文の両方を含みます。
lang_todays_featured_article Today's Featured Article ユーザの選らんだ言語で"Today's Featured Article"に該当する単語。記事が注目記事の場合にのみ利用可能

記事がindexページに表示され記事本文が空でない時に限り次のような変数が利用できます。
The following variables are only available when the story is displayed on the index page and the body text of the story is not empty:

変数説明
lang_readmore read more ユーザの選らんだ言語で"read more"に該当する単語
lang_readmore_words words ユーザの選らんだ言語で"word"該当する単語
readmore_words 62 記事本文のワード数
readmore_link <a href="...">read more</a> (62 words) 記事本文のワード数を含む別ページへのリンク
start_readmore_anchortag <a href=".../article.php
?story=20021022234959146">
別ページの記事へのリンクの開きタグ
end_readmore_anchortag </a> 記事へのリンクの閉じタグ
email_icon (icon) 電子メールのアイコンで記事を電子メールで送信するフォームへのリンク
print_icon (icon) 記事の印刷向き画面へのリンクを示すプリンタアイコン
recent_post_anchortag -- コメントがまだ何も投稿されていない時、この変数にはコメント投稿フォームへのリンク({post_comment_link}と同様)が入っている。記事にコメントがある場合は、変数にはリンクは含まれず、代わりに最後にコメントを投稿した人のユーザ名、コメントがポストされた日時が含まれています。

記事に対するコメントが利用でき既にコメントされている時に限り次のような変数が使えます。

変数説明
comments_url http://www.example.com/article.php
?story=20021022234959146#comments
コメントセクションへのURL(記事が別ページに表示されている時)
comments_text 2 comments コメント数とユーザの選らんだ言語で"comments"に該当する単語
comments_count 2 記事に対するコメント数(1以上)
lang_comments comments ユーザの選らんだ言語で"comments"に該当する単語
start_comments_anchortag <a href=".../article.php
?story=20021022234959146#comments">
記事のコメントセクションへのリンクの開きタグ
end_comments_anchortag </a> 記事のコメントセクションへのリンクの閉じタグ
post_comment_link <a href=".../comment.php
?sid=20021022234959146&pid=0
&type=article">Post a comment</a>
コメント投稿フォームへのリンク(ユーザの選択した言語で"Post a comment"に該当するものをリンク用のテキストに使用)

config.phpの$_CONF['contributedbyline'] = 1;に設定されている時に限り次のような変数が使えます。すなわち記事の著者名が表示されるのを許可している場合です。

変数説明
lang_contributed_by Contributed by: ユーザの選らんだ言語で"Contributed by:"に該当する単語
contributedby_uid 7 記事の著者のユーザID
contributedby_user Tony 記事の著者のユーザ名(ショートネーム)
contributedby_fullname Tony Bibbs 記事の著者のフルネーム。フルネームが記入されていない場合はユーザ名が使われます。
start_contributedby_anchortag <a class="storybyline" href="http://www.example.com/
users.php?mode=profile&uid=7">
記事の著者プロフィールへのリンクの開きタグ(ゲストユーザーの場合は空)
Opening tag for a link to the story author's profile (empty for anonymous authors).
end_contributedby_anchortag </a> 記事の著者プロフィールへのリンクの閉じタグ(ゲストユーザーの場合は空)
contributedby_url http://www.example.com/
users.php?mode=profile&uid=7
記事の著者プロフィールへのリンク(ゲストユーザーの場合は空)
contributedby_photo <img src=".../images/userphotos/Tony.gif" alt="Tony Bibbs"> もしあれば記事の著者の写真(ゲストユーザーの場合は常に空)
camera_icon small camera icon and link to the author's user profile 写真をアップロードしている場合はカメラアイコン("Who's Online"ブロックと同様)と著者プロフィールへのリンク(ゲストユーザーの場合は表示されない)

記事に対する話題アイコンが有効になっていてユーザが無効にしていない時に限り次のような変数が使えます。

変数説明
story_anchortag_and_image <a href="http://www.example.com/
index.php?topic=Geeklog"><img src="..." ...></a>
(shortened)
話題順にソートされた記事の話題アイコンでサイトのindexページへのリンクに挟まれます。
story_topic_image <img align="right" src="http://www.example.com/
images/topics/topic_gl.gif" alt="Geeklog" title="Geeklog">
記事の話題アイコン
story_topic_id General リンクで用いられる話題のID(内部名)
story_topic_name General News 話題名(Sectionsブロックに表示されるもの)
story_topic_url <a href="http://www.example.com/
index.php?topic=General">
話題が設定されている記事のみを表示するためのサイトのindexページへのURL

現在のユーザに記事編集権限が与えられている時に限り次のような変数が使えます。

変数説明
edit_link <a href=".../admin/story.php
?mode=edit&sid=20021022234959146">edit</a>
管理者の記事を編集するためのエディタへのリンク
edit_icon <a href=".../admin/story.php
?mode=edit&sid=20021022234959146"><img src=".../images/edit.gif"></a>
管理者の記事を編集するためのエディタへのリンクするアイコン
edit_url http://www.example.com/admin/story.php
?mode=edit&sid=20021022234959146
管理者の記事を編集するためのエディタへのURL
lang_edit_text edit ユーザの選択した言語で"edit"に該当する単語