Joomler!.netでは、オリジナルエクステンションの作成・既存エクステンションのカスタマイズを承っています。
オリジナルといっても、それが汎用的であれば、販売することを条件に一般的な価格帯での作成も承っています。たとえば、ある一般的でない特殊なデータを扱うエクステンションは、必然的に汎用的では無いため、どうしても価格は高くなりがちです。ですが、一般的に誰でも使えるようなエクステンションで、且つ(これが重要です)みなさんが使いそうなものなら、よくあるエクステンションの一般的な価格で作成することが可能です。ただし、いつでもというわけにはいかないかもしれません。
Firefoxの各種メニューを自在にカスタマイズできる「Menu Editor」拡張 こちらが、目にとまったので不具合がつづくFirefoxにはもうアドオンは、追加しないと決めていた私ですが、思わずインストールしました。
日頃たくさんのコンテキストメニューに辟易していたのですが、これで解消できそうです。
ほら、早速設定してみると左の画像のように僅かしかメニューが表示されません。これで、すぐに目的のメニューをクリックできそうです。ひとつしか試していませんが、サブメニューのものをフラットに並べようとしましたが、それはできませんでした。
中には、非表示にしてそれから、いろいろ場所を変えてとやっているうちに表示にしてもリセットしても表示されないことが、ありましたがその該当アドオンを設定し直す事で直りました。
まだ、とりあえず一通りオフにした感じですが、様子を見て調整していけば良いのでかなり便利だと思います。おすすめ!
YouTube Barを先日から作成しています。きっかけは、カスタマイズして欲しいという依頼からです。どうやら、これが有料版第一弾になりそうです。
Betaとしているのは、まだJavascript部分の詰めが必要だと思うからです。
システムとしては、Joomla!もそのひとつ、エクステンションはたくさんありすぎてどれが欲しい機能を満たすものかは、試していかないと実際わかりません。また、GPLや、たとえそうでないライセンスのものがあっても、それがおのおのの環境での完動品かどうかは、また別の問題です。(それは、うちのエクステンションにも言えること)
インストールは、簡単にできてもそれが、果たしてセキュリティ面でも大丈夫なのか?
それは、どんなシステム、エクステンションに限らず同じようについてまわる問題だと思います。システムが多機能になれば、なるほど発生する問題ですよね。
でも、そのすべてを検証することは、非常に難しいことです。
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の中身をあらためて見てみると意外な発見があるかもしれません。