Content Around Image【ページへのリンクを追加】をするとFatal errorが出てしまいます

2011年12月27日 at 11:45

■concrete5のバージョン: 5.4.1.1.1.ja
■OS: windows7
■レンタルサーバ会社: XSERVER
■利用ブラウザ: FireFox 

Content Around Image - 1.23で
編集モード→ページへのリンクを追加→リンクしたいページを選択→更新
をすると、

Fatal error: Using $this when not in object context in /home/***/***/public_html/concrete/models/page.php on line 596

がでてしまいます。
ちなみに、concrete5のバージョン: 5.4.2.2.jaでもでてしまいました。
原因は何でしょうか?

phpの知識がありませんので、さっぱりわかりません。

よろしくお願いいたします。 

Re: Content Around Image【ページへのリンクを追加】をするとFatal errorが出てしまいます

2011年12月28日 at 12:42
Yamanoiです。

ためしに、エラーになった関数宣言にstaticが記述されていると思いますが
staticを削除して試してもらえますか。
 

Re: Re: Content Around Image【ページへのリンクを追加】をするとFatal errorが出てしまいます

2011年12月28日 at 13:47
エラーと宣言されている部分は、

public static function getCollectionPathFromID($cID) {
$path = Cache::get('page_path', $cID);
if ($path != false) {
$this->getEncodePath($path);
}

$db = Loader::db();
$path = $db->GetOne("select cPath from PagePaths inner join CollectionVersions on (PagePaths.cID = CollectionVersions.cID and CollectionVersions.cvIsApproved = 1) where PagePaths.cID = ?", array($cID));

$path .= '/';

Cache::set('page_path', $cID, $path);
return $this->getEncodePath($path);
}

とありますが、上記のstaticの部分を消去すればよいのでしょうか?
エラーと宣言されている部分以外にもstaticと表記されている部分はいくつかあるのですが。

ちなみに、エラーを宣言された辺りのstaticのみを消去したところ
Fatal error: Call to undefined method ContentAroundImageBlockController::getEncodePath() in /home/***/***/public_html/concrete/models/page.php on line 596
とでてしまいました。
 

Re: Re: Re: Content Around Image【ページへのリンクを追加】をするとFatal errorが出てしまいます

2011年12月30日 at 9:17
yamanoiです。

すいません。だめでしたか。
あとは、エラー行で$this->で読んでいるのをself::に変更してみてください。
これでダメなら、私には分かりません。
 

Re: Re: Re: Re: Content Around Image【ページへのリンクを追加】をするとFatal errorが出てしまいます

2012年1月4日 at 18:56
ありがとうございます。

やってみます。
 

Re: Re: Re: Re: Content Around Image【ページへのリンクを追加】をするとFatal errorが出てしまいます

2012年1月6日 at 19:40
yamanoi様

指示通りやってみたところ、無事直りました!

本当にありがとうございました。