magome のサイトを xoops cube で刷新
magome のサイトを xoops cube を使ったものに刷新しました。
ユーザー登録&管理の仕組みを自前で組むのは手間かかりそうだし、便利なプラグイン(モジュール)がそのまま使えるのはラクだなという理由です。 ラクな分カユいとこに手が届きづらくなるデメリットはきっとあると思うんですが、それを帳消しに出来るほどのメリットがあると思いました。開発者の方々には感謝です。
で、今後もモジュール開発をするであろう主に未来の自分用にメモを残しておこうと思いました。間違いとかあればぜひご指摘頂ければ幸いです。
ノウハウメモ
DB
- テーブル作成は、"モジュール/sql/mysql.sql” を用意して SQL を書く。それを、xoops_version.php の$modversion[’sqlfile’][’mysql’] = “sql/mysql.sql”; って指定。
- なので、それを反映させるには、モジュールの再インストールが必要。
- なお、$modversion[’tables’][index] = “テーブル名” への反映もしないと、モジュールアンインストール時にテーブルを削除してくれない。
- ここで書くテーブル名は、そのまま採用されるわけではなく、プリフィックスが付加される。なのでDB操作時のSQL文でも、プリフィックスの考慮を忘るべからず。
- DB操作は、$xoopsDB っていう変数のメンバを使うべし。
- $xoopsDB->queryF( $query ) は、UPDATE系でコールすべし。それ以外は $xoopsDB->query( $query ) を使うべきっぽい。
preload
- XOOPS_ROOT 直下の preloadフォルダ と、モジュールの下の preloadフォルダ では動作が違う。全ページに影響させたい場合は XOOPS_ROOT 直下の preloadフォルダ に置くべきっぽい。(が、このあたりは全然把握不足)
REST
- XMLとかJSONを返すようなwebサービスのページを作りたい場合、そのページの最後の「include XOOPS_ROOT_PATH."/footer.php”;」をコールせずに、自前でechoすれば良いっぽい。(が、お作法的に正しいのかわからない)
表示
条件によって左右のサイドバーとかを非表示にしたい。
- 各領域の表示をON,OFF出来るような条件文を書いたテーマを自前で用意して対応する。(が、もっとスマートな方法があるのかもしれない。)
テンプレート
- smartyの書式は「<{○○}>」で括るべし。
トラブったメモ
- 日本語が表示されない。日本語のlanguageファイルが無視される。
- UTF8 が標準文字コードっぽいので、languageファイル は 「japanese」ではなく「ja_utf8」になる。(本来は「english」も含めた3種を用意すべき?)
- テンプレートファイルを編集してもページが変わらない。
- テンプレートを書き換えたらモジュールのアップデートが必要。もっと手軽な方法があるなら知りたい。
- モジュールのアンインストールしたとき、作ったテーブルを削除してくれない。
- xoops_version.php の $modversion[’tables’][index] = “テーブル名” の記述が漏れてるか確認。
TrackBacks
TrackBack URL : http://www.thinkridge.com/modules/wordpress/wp-trackback.php/137
この投稿には、まだコメントが付いていません
コメント
_CM_NOTICE