注文の多いXOOPS屋 TOP現在のブログ旧スタッフblog アーカイブ
このページは 2007〜2008 年に公開していた「株式会社RYUS スタッフblog」のアーカイブです。内容は当時のものです。

XOOPS Cube 2.1 で、特定のモジュールだけテーマを変更する

2007/02/09 14:16   Ryuji   カテゴリ: XOOPS Cube

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');
}
}
}
?>/PRE

コメント (2)

— 2009-06-06 12:01
モジュールによってテーマを変更したいと思ってここにたどりついたのですが、これはtheme.htmlに記述すればできるんでしょうか?
よろしくお願い致します。
Ryuji — 2009-06-10 10:19
このやり方は、各モジュールごとにclass/Module.class.phpを作成するやり方になります。