にゃあ

コピーだけで複製できるモジュール

TinyD、myAlbum-Pなどこれらはご存知、コピーするだけで複製できるモジュールです。GIJOEさんが去年の今頃に始められたプロジェクトです。

実験と称して始まったモジュールですが、今日どちらのモジュールも自由な複製が可能になるほどの強力な機能を備えています。

仕組みはソースを読む限りでは、任意の文字+数字がディレクトリ名であることが条件で、その数字の番号をもとに予め用意してある該当番号のファイル(テンプレートなど)を読み込むと言う形です。

これはこれですばらしい(複製可能という自体が革命的)発想です。しかし、唯一の欠点があるとしたら、例えばtinycontent0_index.html、tinycontent1_index.html、tinycontent2_index.html...のように同じファイルを複数用意する必要が有る点です。

結果的にモジュール全体のサイズを肥大化させてしまっています。(これは不要なファイルを削除することで解決できるが、これでは「コピーするだけ」というキャッチフレーズに反してしまう)

そこで、何かうまい方法はないだろうかと考えた末に、いくつか使えそうなアイディアを思いつきました。その一つがonInstallの時に手を加えて、モジュールをだましてしまう方法です。聞こえは悪いですが、このアイディアでいくとsqlは簡単に騙せますのでsqlファイルは1つで済みます。しかし、テンプレートだけはうまく騙せません。これはテンプレートマネージャとの関わりがあるためです。インストール時に騙せても、テンプレートマネージャで矛盾が発生してしまいます。もしXOOPSが俺的XOOPSの様にDBベースではなくファイルベースだったら騙す必要もなく簡単なのですが…。

テンプレートさえ上手く対処できれば「任意の文字+数字」というディレクトリ名からも離脱できそうです。良いアイディアはそのうち思いつきますから、果報は寝て待てです^ー^


コメント&トラバ

トラックバックを送る

無関係なスパムのトラックバックを防止するため、リンク先で本サイト(suin.asia)への言及が確認されないトラックバックは破棄しています。

トラバURL : http://suin.asia/trackback/219

コメントを書く

お名前* URL
本文*
合い言葉* ←「latfitenvet」と入力して下さい。
* この記事の話題と関係ないコメントはどんな内容でも削除します。(移動できないので)

トラックバック

トラックバックがないのはさみしいにゃん…。

コメント

コメントはないです。誰かコメント書いてよぅ…。

Author

Submenu

Recent Entries

XOOPS Cube Dev Ring

氷川 XOOPS Module 開発室

Recent Comments

Recent Trackbacks