comment.tpl.php テンプレートファイル
comment.tpl.php テンプレートファイルの命名規則とテンプレート内で使用可能なデフォルト変数についてまとめています。
テンプレートの命名規則
テンプレートには、comment.tpl.php というベーステンプレートだけでなく、comment-story.tpl.php や comment-blog.tpl.php などのような、特定の場面にのみ適用するためのサジェスチョンテンプレートを作成・使用することができますが、それらのサジェスチョンテンプレートはベーステンプレートと同じディレクトリ内でのみ動作する仕組みになっていますので、テーマ内でサジェスチョンテンプレートを使用したい場合は、同時にベーステンプレートも作成しておく必要があります。
- ベーステンプレート: comment.tpl.php
- 命名規則: comment-[type].tpl.php
- サジェスチョンテンプレートのサンプル
-
- comment-story.tpl.php -- "ストーリー" コンテンツタイプページのコメント
- comment-page.tpl.php -- "ページ" コンテンツタイプページのコメント
- comment-blog.tpl.php -- "ブログエントリ" コンテンツタイプページのコメント
- comment-book.tpl.php -- "ブックページ" コンテンツタイプページのコメント
- comment-forum.tpl.php -- "フォーラムトピック" コンテンツタイプページのコメント
- "ストーリー" コンテンツタイプへのコメントの場合に読み込まれるテンプレートの順序
-
- comment-story.tpl.php
- comment.tpl.php
テンプレート内で使用可能な変数
デフォルトのテーマ変数は includes/theme.inc 内などで定義されています。
- コメントの内容を表す変数
-
$author コメントの投稿者名をリンクまたはプレーンテキストとして返します。 $content コメントの内容を返します。 $date コンテンツの投稿日時を返します。 $links $comment->links の配列の内容をリストとして返します。
それぞれのリストには、内容に応じた class が割り当てられ、さらに最初と最後の項目には、それぞれ "first" "last" の class が割り当てられます。$new コメントの掲載状況を判定し、新しいコメントの場合に "New" を表示します。 $picture コメントでのユーザアバターが有効になっている場合に、ユーザアバターの内容を返します。 $signature 投稿者の署名を返します。 $status コメントのステータスを返します。
返される値は comment-unpublished(未公開), comment-published(公開), comment-preview(プレビュー)のいずれかになります。$submitted コンテンツの投稿者名および投稿日時を返します。 $title コメントのタイトルをリンクを含めて返します。 - その他の変数
-
$id 1から始まり、テンプレートが読み込まれるたびに 1ずつ加算される数値を返します。 $zebra テンプレートが読み込まれるたびに読み込み回数が偶数回であるか奇数回であるかを判定し、"odd" または "even" を返します。 $comment $comment オブジェクトの内容を返します。 $node コメント元コンテンツの $node オブジェクトの内容を返します。
このページで使用している「サジェスチョンテンプレート」というのは、drupal.org のドキュメント内に記載されている "Template suggestions" を意訳して作成した名称です。

