XOOPS Cube 2.1 で、特定のモジュールだけテーマを変更する
XOOPS Cube 2.1 では、各モジュールにアクセスしたときに、そのモジュールの class/Module.class.php に {Dirname}_Module クラスがあると、そのクラスの startup()メソッドを実行するようになっています。
それを利用して、startup()メソッド内でテーマを変更すると、そのモジュールにアクセスしたときだけテーマが切り替わるようになります。
下記は、foo モジュールにアクセスしたときだけ、bar モジュールに切り替える例です。
PRE < ?php
class Foo_Module extends Legacy_ModuleAdapter
{
function startup()
{
$root =& XCube_Root::getSingleton();
if ($root->mContext->mBaseRenderSystemName != 'Legacy_AdminRenderSystem') {
$root->mContext->setThemeName('bar');
}
}
}
?>