XOOPS2では、コード1のようにオブジェクトが生成されているかどうかをもとに暗黙の了解の上でゲストかログイン済みのユーザかを判断していましたが、XOOPS Cube Legacyでは、アクセス中のユーザのロールを明示的に判断することができるように強化されています。
// コード1:XOOPS2風のやりかた
global $xoopsUser;
if ( is_object($xoopsUser) ) {
// ユーザ
} else {
// ゲスト
}
// コード2 : Legacy流のやりかた
$root =& XCube_Root::getSingleton();
$user =& $root->mContext->mUser;
if ( $user->isInRole("Site.GuestUser") ) {
// ゲスト
}