デリゲートでBBCodeの拡張を Part2
このブログで、PHPのソースを紹介する時、以前は、WordPressのプラグインをつかって、色分けされたソースを表示していました。
しかしながら、同様のことはXOOPSのDelegateを使用しても実現出来ます。少し前の投稿からこのDelegateによって拡張したBBCodeの[phpsrc]タグを使用するように変更しました。 (続き...)
このブログで、PHPのソースを紹介する時、以前は、WordPressのプラグインをつかって、色分けされたソースを表示していました。
しかしながら、同様のことはXOOPSのDelegateを使用しても実現出来ます。少し前の投稿からこのDelegateによって拡張したBBCodeの[phpsrc]タグを使用するように変更しました。 (続き...)
XOOPS Cube Legacy2.1では、モジュール開発者向けにモジュールの実行モードを2つ追加しました。
従来のXOOPS 2.0.xでは、モジュール開発者がXOOPSの実行環境を読み込む事によるオーバーヘッドを回避するために、
<?php
$xoopsOption['nocommon']=1;
include '../../mainfile.php';
?>
というように書くと、XOOPS_ROOT_PATH等のmainfile.phpに定義された定数だけを読み込むだけで、include/common.phpのinclude実行を行わない様にすることができます。
XOOPS2.0.xでは、この状態でXOOPSが提供しているfunctions.php等を独自に参照することが可能だったのですが、XOOPS Cube Legacy2.1ではfunctions.php内の関数が、XCube_Root等の XOOPS Cubeクラス群を参照するようになったため、定数を読み込んだだけの状態では、functions.phpのincludeに失敗してしまいます。
そこで、XOOPS Cube Legacy2.1 Beta3-d の時点で、$xoopsOption['nocommon']が設定されていても、必要最低限のXOOPS Cubeクラス群の初期化を行うように変更しました。
これによってXOOPS2.0.x用のモジュールで$xoopsOption['nocommon']を指定しているプログラムの大半が稼動可能になったはずです。
しかしながら、$xoopsOption['nocommon']を指定する目的の大半が、特定処理のオーバーヘッド軽減による高速化であったことから、この「必要最低限のXOOPS Cubeクラス群の初期化」でさえも重く感じる場合があるようです。
何人かのメンバーとの討議の結果、新たに2つのPHP定数を用意して、これらのモジュール開発者の要望の期待に答えることにしました。 既存の$xoopsOptionでは無くPHP定数にしたのは、新たなグローバル変数の定義をコアチームとしては避けたかったからです。
(続き...)
少し時間がたちますけど、GIJOEさんの記事、「Cube2.1betaをデバッグする前に」で、XoopsErrorHandlerの復活について書かれていましたが・・・・
引用:
このあたり、エラーハンドラの有効無効を選択式にする、という話をminahitoさんから聞いていたような気もするのですが、ぱっと見で一般設定には見つからないので・・・・・
この部分、minaitoさんの意図はXOOPS Cube Legacy2.1から、デバッグマネージャの初期化がDelegateによって実装されたこともあって、preloadで換装できますという意味だと思います。 (続き...)
10月28日に日本電子専門学校にて開催されました、オープンソースカンファレンス2006 Tokyo/Fall(OSC2006 Tokyo/Fall) のセミナーでの発表に使用させていただいた資料を公開させていただきました。
準備不足もあって、十分な内容の資料とはなっておりませんが、ご参考まで。
25 queries. 0.012 sec.
Powered by WordPress Module based on WordPress ME & WordPress
日 | 月 | 火 | 水 | 木 | 金 | 土 |
---|---|---|---|---|---|---|
« 11月 | ||||||
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |