環境はxrea
PHP(4.4.8)
MySQL(4.0.26(4.0.27))
Nucleus(v3.41)
NP_MobileWithSinglePage(2.1.0)

PEARライブラリである
Net_UserAgent_Mobileと、XML_HTMLSaxが必要なので、
SSHにて当サーバーに導入されているライブラリをチェックすると入っていない様子。
http://pear.php.net/より
Net_UserAgent_Mobile(1.0.0)と、XML_HTMLSax(2.1.2)を入手して、

*icon_dir* public_html
└ *icon_dir* nucleus
  └ *icon_dir* plugins
   └ *icon_dir* sharedlibs
     ├ *icon_dir* XML
     │ ├ *icon_doc* XML_HTMLSax.php
     │ └ *icon_dir* HTMLSax
     │ └ ...(以下省略)
     └ *icon_dir* Net
       └ *icon_dir* UserAgent
         ├ *icon_dir* Mobile
         │ └ ...(以下省略)
         └ *icon_doc* Mobile.php

とする。

Fatal error: Call to undefined method: net_useragent_mobile_docomo->iserror() in MyHost/nucleas/plugins/NP_MobileWithSinglePage.php on line 104

net_useragent_mobile~が見当たりません・・・だって。
しかたが無いので最終β(0.31.0)と差し替えてみると動きました。

でもちょっと待って。
新規定義された端末判定が出来ないじゃないんじゃないの?
それってちょっとカレーに肉が入っていないくらい駄目なんじゃないの?

ってことで、
エラーを掘り下げてみた。

NP_MobileWithSinglePage.php(2.1.0)のline104
if (!$objUAMobile->isNonMobile() && !$objUAMobile->isError()) {
isErrorメソッドが定義されてないって言われてる。
↑は同line103
$objUAMobile =& Net_UserAgent_Mobile::factory($userAgent);
で参照渡しされてるみたい。

で、よーしもっと掘ってくぞぃってところで、
::これなに?コロンのダブル。
詰まった。。。こんなの知らない。。。検索しても上位には無い。。。
ごめんなさい。だからどうか、教えてえろい人。

しかし某掲示板には返事が無い。
ただの屍のようだ。。。

ってことで、

if (!$objUAMobile->isNonMobile()) {
$this->isMobile = true;
$this->aMobileInfo['carrierLongName'] = $objUAMobile->getCarrierLongName();
$this->aMobileInfo['carrierShortName'] = $objUAMobile->getCarrierShortName();
$this->aMobileInfo['name'] = $objUAMobile->getName();
$this->aMobileInfo['version'] = $objUAMobile->getVersion();
$objDisplay = $objUAMobile->getDisplay();
if (!PEAR::isError($objDisplay)) {
$this->aMobileInfo['height'] = $objDisplay->getHeight();
$this->aMobileInfo['width'] = $objDisplay->getWidth();
$this->aMobileInfo['color'] = $objDisplay->isColor();
$this->aMobileInfo['depth'] = $objDisplay->getDepth();
}
} else {
echo 'その端末、変なんです。変なんです。';
}


として寝ます。
if (!$objUAMobile->isNonMobile() && !$objUAMobile->isError()) {
こんなのに引っ掛かる端末も少ないだろうし。。。

::って何なんだよ><