XOOPS 用カスタムモジュールの開発
nobu 2008/1/30 18:06:14 2011/12/19 0:57:28 68029
フリーランスのプログラマである私 (nobu - プロフィール)は、XOOPS 関連でこのような業務をやってます、と言うことで、これまでに行ったモジュール開発や改造 (カスタマイズ) 事例を紹介する。
XOOPS を使って、Webサイトを構築する場合、公開されているモジュールを組み合わせて済むなら話は簡単である。しかし、やりたいことにぴったりのモジュールがない場合がある。そういうのを解決するわけだ。
そんなことで、最近開発したモジュールやカスタマイズ事例を紹介する。なお、基本的に機構の設計開発が専門で見た目のデザインはあまりやらない。
1. てんぷめーる
メールの添付ファイルをサーバに置いて蓄積 URL に変換するサービス。サービスの管理や Web 送信や実現するカスタムモジュールが実装されいる。ちなみにメール系の実装も私が行っている。右の画像は、報告機能の利用状況の集計画面。
2. リナックスビジネスイニシアチブ
会員向けに、名簿保守機能、メールアーカイブの閲覧機能、およびサービストレードモジュールを実装している。
XOOPS 1.3 で運用していたものを、XCL 2.1 に移行した。 PHP 4 向けの下位互換機能で動かしていたコードの改修、テーマの移植、使用モジュールをモダンなものに変更、データベースの文字コード変更などを行った。
3. 未踏ソフトウェア >> 案内と申込
ここのサイトのために開発されたのが「イベント案内モジュール」である。汎用性があるので公開してある。割と好評のようで、結構使われているようだ。ちなみに、このサイトのテーマは私のオリジナル。無料のおまけに作ったので、極力シンプル。
4. マイサイト ユーザーズ 2.0 (このサイト)
2002年に XOOPS 1.3 ベースでオープンした。サイトの仮想化をサポートする改造などを施して利用していた。利用者は新規登録程度の手間で同様のサイトが作成できるサービスを提供していた。 仮想サイトを作成するサービスは専用モジュールとして実装してあった他に、画像のアップロードを行う イメージ管理, 参照元情報 などを提供していた。
2008年1月 XOOPS Cube Legacy 2.1 でリニューアルを行った。同時に、国際化対応。テーマはオリジナルのデザイン、以前のシンプルなテイストを残しながらちょっと影を入れてみました。
2008年2月、サイト構築サービスを提供した。このサービスを動かすシステムの開発を行っている。
5. ラングランド外国語会話スクールの タイムテーブルサイト
カスタムモジュールは使っていないが、一部表示形式の変更やイベント通知の条件追加、表示順序の変更、ユーザ検索の強化などのカスタマイズをお手伝いした。
WEBレッスンのシステム構築にも参加している。
6. VMware JAPANのメンバーサイト (〜2008年)
シリアルキーの配布、グループの自動変更、条件割り込み、などの複数のカスタムモジュールを使って構築されている。
他に、ユーザー検索へグループ指定機能、ユーザ情報のカスタマイズなどいくつか変更を加えている。
7. 実験用サイトなど
テーマやモジュール開発の実験用に使っているサイト。
たまに検索エンジンなどで引っかかって訪れるひとがいるようだ。
同じように、4.のマイサイト で作ったサイトの例として、リゾート暮らし などもある。
8. サイト構築補助ツール
モジュールでは無いが、XOOPS を使ったサイトの構築作業で使うツールとして開発したもの。
モジュールの自動的な複製と静的に作成されたコンテンツのバッチ取り込みを行う。大量にコンテンツがあるものを取り込んだり、静的なページデザインを行うデザイナと共同作業をする場合に利用する。
このツールは、
株式会社キャリアライズ (その2、その3) のサイト構築で活用された。2006.1
管理アイコンへ文字列挿入
XOOPS の管理アイコンにタイトル文字列を描画するツール。複製機能を持ったモジュールで同じアイコンが並び判別し難くなる問題を解決するため作成。
9. ナショナルクリエイターズカンファレンス
カスタムモジュールとして、SNS 機能を提供するモジュール (personal)、ユーザのディレクトリと検索モジュールを作成し、ユーザ毎に RSS フィードを設定できる機能、通知機能の強化、アップロードインターフェースの変更など、いくつかのモジュールへ変更を行っている。
10. 開発ツールベンチ
あるソフトウェア開発の支援ツールの GUI フロントエンドを XOOPS を使って構築。バックグラウンド実行する処理のコントロール、結果の保持と表示、バグトラッキングなどの機能を統合する。
通常完成品は、サーバー上への設置およびソースコードアーカイブとして納入するが、この事例ではVMware イメージとしてサーバーを構築し納品した。
11. WWWサイト構築管理システム
WWWサイトをブラウザ操作だけで作成するシステム/モジュール。 フォームの入力のみで仮想サイトの作成し、コンテンツ(ファイル)の管理もブラウザで行える。暗証チケットを使う (メール認証を使わない) ユーザ登録システム、ユーザアカウント (mailbox) 生成、ウェブメーラまで連動して機能するシステムを構築してある。言い替えると、XOOPS で ISP の提供するウェブ/メールのサービスのようなものを構築している。
12. ビデオ素材用リンク集モジュール
ビデオコンテンツの掲載モジュール。ビデオ素材そのものは別に扱うリンク集型のモジュールである。フィード用の URL や付属情報を保持するだけだが、任意の付属情報と階層化したカテゴリを設定できる。設定したカテゴリで自動的に索引を生成する。XOOPS 標準のコメント機能やイベント通知に対応する。教育目的のビデオコンテンツを登録するためのシステム(教育実習の記録ビデオの閲覧システム)として作成されている。
13. スクリプトアップデート
スクリプトベースの更新サービスを提供する会社のサイトで、XOOPS の更新サービス Xoops Update を提供している。そのサービスのクライアント XoopsUpdate モジュール および、サーバ用のモジュール の開発を手がけている。
14. waget.jp
電話番号だけをメールで送って、お店の情報やクーポンを入手する携帯向けサービス。
メールの処理を行う部分や Web のサポートモジュールの初期開発を担当。
15. 既存モジュールの改造
配布されているモジュールに対して、個別の用途に応じた改造などを請け負っている。
liaise (フォームメール) の改造送信内容の確認画面、SSLの強制機能の追加。
送信内容の確認画面、モジュール複製機能。
入力項目をカスタマイズ。
- 早朝を前日深夜としての時間表示する機能2009.12
- 担当者による予約登録機能2006.5
- 定員を一括編集
- Excel形式出力2006.6
- 予約後ページの指定2006.8
- モジュール複製機能2008.2
- 予約制限のプラグイン (plugins/dlimit.php として同梱)2009.12/2010.2
- eguide チケット条件プラグイン2006.4
- piCal用 eguide 改造プラグイン -- piCal に同梱済み2006.5