Joomla!にはじめから付いているデフォルトテンプレートを考察!?してみる。
rhuk_milkyway
- そのまま使えて基本中の基本といった感じでしょうか。でもカスタマイズしはじめるとデフォルトで指定されているスタイルが邪魔になって返って面倒な気もします。
ja_purity
- 基本を通り越して少し独自のコントロールを持ったテンプレートみたいな。ここまでやっちゃうと初めてでは少しカスタマイズしづらいかもしれません。
beez
基本から少し拡張している部分もあってJoomla!の基本が、一番わかりやすいテンプレートだと思います。例えばindex.phpの冒頭にある下記のコード
$showRightColumn = $this->countModules('user1 or user2 or right or top');
$showRightColumn &= JRequest::getCmd('layout') != 'form';
$showRightColumn &= JRequest::getCmd('task') != 'edit'
こう書く事で右カラムを表示するのかしないのかを判断しています。中程を見ていくと下記のコードで表示・非表示を切り替えていることがわかります。
<?php if ($showRightColumn) : ?>
ここに右カラム
<?php endif; ?>
さらにbeezの非常にわかりやすい点は、htmlフォルダ内でオーバライドされているテンプレート群が多い事です。標準のほとんどのエクステンションがオーバーライドされていることがわかります。なのでオリジナルのテンプレートを作成するときは、beezを基本にされるとわかりやすく、カスタマイズしやすいかもしれません。
また、よくあるフリーのJoomla!とは全く関係のないCSSテンプレートなどでもbeezを参考にJoomla!の出力タグを割り当て、慣れてきたらja_purityを見ながら拡張していくのも一つの方法です。
Joomla!の場合メニュー毎にテンプレートを割り当てる機能があるのでそれでコントロールするのも一つですが、ファイルが複数になって管理しづらくなってしまう弊害もあります。そこで、デザインがあまり変わらないのならJoomla!のデフォルトテンプレートを参考に一定のタイミングで表示・非表示の切替を行ったり、クラス名を変更したりなどと可変なテンプレートを作成する方が簡単で管理もしやすい方法と言えます。
このサイトは、Joomla!1.0でテンプレートのオーバーライド機能はありませんが、独自のコンポーネントを使用する事でオリジナルの出力を行っています。テンプレートは一つのみで、上と同様に一定のタイミング(メニューIDや、コンポーネント、タスクなど)で表示・非表示などを切り替えています。
蜂の顔も見慣れるとかわいく思えます。beezの中身をあらためて見てみると意外な発見があるかもしれません。









