2016-11-05 3 views
0

を与える:コール・コンポーネントは、機能を追加しますが、私は持っていただきました!ここでは、プラグイン方式</p> <p>を使用する必要があり、既存のプラグインコンポーネント を拡張しようとするとエラー

<?php namespace Bbrand\Shop\Components; 

use Cms\Classes\ComponentBase; 
use Jiri\JKShop\Components\Basket; 


class Shopextend extends ComponentBase 
{ 

    public function componentDetails() 
    { 
     return [ 
      'name'  => 'shopextend Component', 
      'description' => 'No description provided yet...' 
     ]; 
    } 

    public function defineProperties() 
    { 
     return []; 
    } 


    public function onBasket(){ 

     $data = []; 
     $data["basket"] = Basket::getSessionBasket(); 
     $data["jkshopSetting"] = \Jiri\JKShop\Models\Settings::instance(); 

     return [ 
      $this->property("idElementWrapperBasketComponent") => $this->renderPartial('@basket-0', $data) 
     ]; 

    } 


} 

しかし、私は取得していますエラー

/Applications/MAMP/htdocs/fidgycube.co/plugins/bbrand/shop/componentsの30行目で、非静的メソッドJiri \ JKShop \ Components \ Basket :: getSessionBasket()を静的に呼び出すべきではありません。 /Shopextend.php

助けてください! ありがとう

+0

static == '::'を呼び出す、この場合は ' - >' – Xorifelse

+0

を意味しないので、どうすればいいですか? – aleXela

+0

私のコメントがなくても、答えは顔を見ているは​​ずです... PHP OOPの基本です。 $ data ["basket"] = Basket :: getSessionBasket(); 'は静的に呼び出されています。今私の最初のコメントを読んでください。 – Xorifelse

答えて

0

まずコンポーネントを追加する必要があります。

<?php namespace Bbrand\Shop\Components; 
class Shopextend extends ComponentBase 
{ 
    public function init() 
    { 
     // Add component 
     $this->addComponent('\Jiri\JKShop\Components\Basket', 'basket', []); 
    } 
} 
+0

それが動作することを願っています。ありがとう – aleXela

関連する問題

 関連する問題