Xoopsの好きなとこ、嫌なとこ

2007/06/24 | XOOPS

今、Xoopsのモジュール作成にチャレンジ中。
チャレンジといってもお仕事なので、もちろんまじめに取り組んでいる。元来どんな仕組みでも癖というものがあるが、Xoopsについて、プログラムを書いていく上での、現時点での心象をメモしていく。

○好きなとこ
・どんなモジュールでもxoops_version.phpという設定ファイルを書くのだが、正しく書けばそれだけで簡単な設定画面を作成できる。

今のところ「いいな」と思ったのはそれだけ。個人的には「嫌だな」と思うところが結構ある。

○嫌なとこ
・一般ユーザ向けはSmartyで処理するのに管理画面はSmarty関係なし(ありえない)。
・php関数constantとか使ってて、変数の設定をするのに、本来$moji=VALUEみたいに書くように統一すればいいのに$moji=’VALUE’みたいな変則的な書き方をするべきところが一部ある(ていうか統一してよ)。
・各種キャッシュを無効にするオプションがない(どこかにあるのか)。モジュール作成時はファイルの書き直しが頻繁なのだから、キャッシュされるとそれを無効にする術がわからない。結局モジュールのアンインストール&インストールなんていう手間な作業をしている。

数え上げればきりがない。まぁ、きっと奥深くお作法があるとは思うのだが・・・。Xoopsモジュール作成ガイドみたいなページないのかな。あれば絶対にページビューすごいと思うのだけど・・・。

PagerでPager_Wrapperを使わない処理

2007/06/23 | その他PEAR全般

Pagerでデータベースを絡ませず、データ数からリンクだけ作成する場合の記述例をメモ。

$pagerParam=array();
$pagerParam[‘totalItems’]=’全データ数';
$pagerParam[‘perPage’]=’1ページあたりの表示行数';
$pagerParam[‘delta’]=5;
$pagerParam[‘mode’]=’sliding';
$pagerParam[‘currentPage’]=’現在のページ番号';
$pagerParam[‘extraVars’]=array(‘クエリの引数’=>’クエリの値’);
$pager=Pager::factory($pagerParam);
$link=$pager->getLinks();

最近データベースを絡ませたくないパターンも増えてきたので、いちおうメモ。しかしこのPager、すばらしいよ。確実に工数が減った。

XoopsとOpenPNEを連携させる

2007/06/19 | XOOPS

どうも昨年当初からXoopsとOpenPNEを連携させるという機能への研究が始まっているらしい。それにOpenPNE開発元の手嶋屋さんも一声乗ってそうな感じ(手嶋屋さんのブログにて)。
しかし手嶋屋さんのブログで社長コメントが昨年2月以来追記されていない。なんでも文字コードがらみが大変なんだとか。ん・ん・ん。
さらに調べてみるとXoops、OpenPNE双方ともLDAPに対応させることが出来ているような記事も見受けられる。こんなふうにXoopsとOpenONEが直接連携しなくても、別のサービスを介して連携させることさえ出来れば十分だ。
そしてもう一つ言うなら、それがLDAPとかじゃなく、ウェブサービス的な感じでできるとうれしい。
最近ようやくXoopsモジュールの開発を始めたので、ちょっとチャレンジしてみる?!。少しお金がたまって生活に余裕が出来たらね。

と思ってさらに調べてたら2006年12月にスレーブPNEという名前で何かがでてる模様(ここ)。
XoopsはいいけどOpenPNE側でエラーメッセージが・・・。多分関数の引数を参照渡ししてるようなエラー。ソースも落とせそうなので、これで修正してしまえばいけそうな感じだ。

1年かかったんだ。

XOOPS本

2007/06/18 | XOOPS

XOOPS本を2冊買った。本を買った目的は「モジュールが作れるようになること」。ウェブで調べれば情報はあると思うが、やはりこういうとき、紙媒体は捨てがたい。
1冊目は「Customizing Xoops」。基本的な使い方から、代表的な外部モジュールの使い方、テンプレートの編集、モジュールのハックまで書いてある。まだ全てを読んだわけではないけれど、既存のモジュールでやりくりするならこの本で十分だ。代表的な外部モジュールとして、簡単にページを追加するための「TinyD」、外部RSSを読み込む「xhld」が紹介されている。しかしこの本を読んでもモジュールを作れるようにはならない。モジュールの仕様が書いてないからだ。モジュールの仕様がわからないのだから、モジュールのハックといってもおそらく本格的にはハックできない。なんとも中途半端な本だ。
最初はこの本だけ買ったのだが、この本の中の記述で「モジュール作るならこの一冊」見たいな記述があった。その本は「XOOPSコミュニティサイト構築ガイド」。この本はよかった!。モジュールの仕様がよくわかる。しばらく読んでいて、なんとなくXOOPSがわかったような気がしてくる。でも正直言うと、もう少し細かく書かれていてもいいような木がする。一つの項目についてもっと徹底的に解説して欲しかった。でもまぁ、これでなんとかなりそうだ。

結論として、多少なりともハックを試みようとするなら、間違いなく後者がお奨めだ(おそらく後者を先に買っていたら、前者は買わなかったと思う)。前者は駄目本とは言わないが、正直いってイマイチだ。

この本2冊、どちらも3000円ほどする高価な本だが、前者と後者の装丁の差が著しい。明らかに前者のほうがいいと思う。後者の装丁はやすっぽい。装丁も購買意欲に大きく影響するのだなぁと、別の意味で感心してしまった。

余談だが、誰か「白扇」もってないかな・・・。持ってる人譲ってください。

PHPアンケートの集計結果その7

2007/06/15 | その他

■PHPのテンプレートではSmartyが有名ですが、あなたは普段テンプレートを使いますか。普段使っているものがあれば教えてください。

はい、予想通り。有効回答数131のうちSmartyをあげた人は65人。圧倒的多数です。その他ではHTML_Flexy、 HTML_Template_IT、 HTML_Template_Sigma、 phptal、 htmltemplate、 simplateなどですが、いずれもお一人かお二人程度と少数。あと自作テンプレートを使用されていらっしゃる方が8人くらいいらっしゃいました。どういうのを使われているのかちょっと興味ありますね。

あとテンプレート使ってらっしゃらないツワモノも。テンプレートを使わないということは、HTML中にPHPスクリプトを挿入されていらっしゃるのでしょうか。

Smartyはやっぱりデフォルトスタンダードでしたが、コーディング屋さんには敷居が高いような気もしますね。以前htmltemplateを使っていたことがありましたが、これは単純、明快、簡単。制御できることはあまりないけど、それだけコーディング屋さんにも理解しやすかったなぁ、と思います。

以上でアンケートの回答取りまとめは終わりです。
ご協力いただいた方々、どうもありがとうございました。
大変勉強になりました。


守谷市(まちの情報ポータル) 無料アンケートレンタルjpForm.net