Skip to content

Joomla!コンポーネントを全画面表示

Joomla!コンポーネントを全画面表示 published on Joomla!コンポーネントを全画面表示 へのコメントはまだありません

タイトル通り。全画面表示したりとか、新規ウィンドウに表示したりとかしたい。
新しいテンプレートを使って、全画面表示したいコンポーネントのページに適用するだけ。
ここを参考にした。

Community Builderの機能をコンポーネントから使う

Community Builderの機能をコンポーネントから使う published on Community Builderの機能をコンポーネントから使う へのコメントはまだありません

ここ1ヶ月くらい作成中のJoomla!コンポーネントがようやく形になってきた。そのコンポーネント内部ではCommunity Builderで追加したフィールドの値を参照してる。

そうしたことをするには、以下のようなコードを埋め込む必要がある。

global $_CB_framework, $ueConfig, $mainframe;
if ( defined( 'JPATH_ADMINISTRATOR' ) ) {
if ( ! file_exists( JPATH_ADMINISTRATOR . '/components/com_comprofiler/plugin.foundation.php' ) ) {
echo 'CB not installed!';
return;
}
include_once( JPATH_ADMINISTRATOR . '/components/com_comprofiler/plugin.foundation.php' );
} else {
if ( ! file_exists( $mainframe->getCfg( 'absolute_path' ) . '/administrator/components/com_comprofiler/plugin.foundation.php' ) ) {
echo 'CB not installed!';
return;
}
include_once( $mainframe->getCfg( 'absolute_path' ) . '/administrator/components/com_comprofiler/plugin.foundation.php' );
}
cbimport( 'cb.plugins' );
cbimport( 'language.front' );

でないと、以下のようなエラーが出る。

Fatal error: Class 'comprofilerDBTable' not found in /path/to/joomla/administrator/components/com_comprofiler/library/cb/cb.tables.php on line 16

詳しくはここを参照

環境:
Joomla 1.5.15
Community Builder 1.2.2

EclipseでBazaarを使う

EclipseでBazaarを使う published on EclipseでBazaarを使う へのコメントはまだありません

タイトル通り、バージョン管理システムであるBazaarをEclipseから使う方法。

基本的にはBazaar Eclipseプラグインのインストールページ(英語)に書いてある通り。

必要なもの

  • Bazaar本体(ダウンロードページ
  • bzr-xmloutput(ダウンロードページ。ただし、Windowsの場合、Bazaar本体を入れる時にデフォルトでインストールされる。)
  • Java(あたりまえ)
  • Eclipse(これもあたりまえ・・・)

あとは、Eclipseのプラグインリポジトリ(?)に http://verterok.com.ar/bzr-eclipse/update-site/ を追加してインストールするだけ。Eclipseのプラグインをインストールしたことがある人なら書くまでもないか。

インストール後、Window -> Preferencesを開いて、Team -> BazaarからBazaar本体の場所とかを指定するだけ。

Joomla!のViewで違う名前のModelを使う

Joomla!のViewで違う名前のModelを使う published on Joomla!のViewで違う名前のModelを使う へのコメントはまだありません

まだまだJoomlaのコンポーネントを作成中。
JoomlaでMVCスタイルに沿ってコンポーネントを作る場合、各クラス・ファイル名をJoomla流儀の命名規則にしておかないと結構面倒。
■ViewでView名とは違う名前のModelを使いたい
admin側の機能を先に作ったんだけど、ユーザー側のコードでもadmin側で作ったmodelを使いたい。色々調べたり試行錯誤したりして、1時間くらいかかってしまった…
フォーラムのこの書き込みが結構役に立った。

Continue reading Joomla!のViewで違う名前のModelを使う

Joomlaでトランザクション

Joomlaでトランザクション published on Joomlaでトランザクション へのコメントはまだありません

またまたJoomla!コンポーネント作成の話。
Webアプリを作ってりゃトランザクションが必要な場面の1つや2つはあるもの。そのやり方だけど、JDatabaseのsetQueryメソッドでSTART TRANSACTIONとかを実行するという原始的なやり方。英語のフォーラムより
JDatabaseにBeginTransとかのメソッドがあるけど、中身は全部空。今後実装されるのかな・・・
当たり前だけど、トランザクションを使うには、テーブルはInnoDBじゃないとダメ。Joomla!のテーブルはMyISAMなので要注意。

$(‘foo’).get is not a function

$(‘foo’).get is not a function published on $(‘foo’).get is not a function へのコメントはまだありません

引き続きJoomla!のコンポーネント作成中。

MooToolsのリファレンスを見つつ、以下のようなJavaScriptを書いた。

var foovalue = $('footextbox').get('value')

そしたら $(‘foo’).get is not a function ってエラーが出た。(FirefoxのプラグインFirebugを使ってるのでIEだと違うエラーかもしれないけど。)

$(‘foo’)で取得できるのはgetElementByIdで取得するのと同じくDOMオブジェクトなので、以下のように普通にDOMのエレメントを使えばいいらしい。

var foovalue = $('footextbox').value

getやその他のMooToolsのメソッドを使うにはそのDOMオブジェクトへの参照を取得すればいいっぽい。

MooTools

MooTools published on MooTools へのコメントはまだありません

Joomla!ではMooToolsというJavaScriptのフレームワークを使っているらしい。
コンポーネント作成しててビューをいじってる時にJHTMLのコードを見てて気づいた。$(‘element’)とかの記法はprototype.jsと同じだし取っつきやすい。
他のフレームワークとの比較とかはよく分からないけど、Joomlaのコンポーネントを作るなら覚える必要がありそう。とはいえ、それ程多機能でもないし、リファレンスを見ながらやれば問題無さそう。

Joomla! 参照テーブルをプルダウンにする

Joomla! 参照テーブルをプルダウンにする published on Joomla! 参照テーブルをプルダウンにする へのコメントはまだありません

引き続きJoomla!でコンポーネント作成中。
例えば生徒テーブルと先生テーブルがあるとする。生徒テーブルには担任の先生のIDを格納するフィールドがあって、先生テーブルを参照している。生徒の編集ページでは、担任の先生をプルダウンから選択したい。
こういう時の方法に関する本家フォーラムの書き込み
でも、昨日も書いたけど、こういうのはフレームワークで出来るようになっていると嬉しい。

Joomla! 1.6でMVC

Joomla! 1.6でMVC published on Joomla! 1.6でMVC へのコメントはまだありません

引き続きぼちぼちJoomla!でコンポーネントを作ってるんだけど、単純なCRUDを作るのが結構めんどくさい。せっかく省力化のためにCMS使うのに、ちょっと機能追加しようと思ってコンポーネントを作ろうと思ったら、単純なCRUDに時間がかかっては本末転倒のような…symfonyみたいなフレームワークを一度使っちゃうともう元には戻れないなぁ。
さて、何かいい方法がないかと思って調べてたら、1.6ではそのあたりが結構改善されているっぽい。1.6でのMVCのチュートリアルなんだけど、XMLでビューの定義とかをしている。
1.6に乗り換えようかなぁと思ったけど、まだα版なので断念した。

今更なんだけど

今更なんだけど published on 今更なんだけど へのコメントはまだありません

今年に入ってからボチボチ作り始めてたサイトを公開したってのはこないだのエントリで書いた。
今回はJoomla!を使ってるってのも以前書いた。今までいくつかのCMSを使ってきたけど、当たり前だけど年々進化しているなぁと思う。それはJoomla!に限った話ではないと思うけど。
それなりの見栄えのサイトが簡単に作れるってのは、自分みたいな仕事の人に取っては非常に助かる。