2017-09-15 19 views
0

私はPHPを初めて使用しています。メーカーの国名を製品ページに表示する方法を教えてください。私はProductController.phpやその他のトリックをオーバーライドするようないくつかの実験を行ってきましたが失敗します。私はまた、インターネット上で別のソリューションを試しましたが、成功することはできません。前もって感謝します。メーカーを表示国名製品名Prestashop 1.6 eコマース

答えて

0

製造元に複数の住所があることにご注意ください。このコードは、最初のアドレスからのみ国を取得します。 override/controllers/front

オーバーライドコントローラProductController

class ProductController extends ProductControllerCore 
{ 
    public function initContent() 
    { 
     parent::initContent(); 

     if (!$this->errors) { 
      $manufacturer = new Manufacturer((int)$this->product->id_manufacturer, $this->context->language->id); 
      $manufacturerAddress = $manufacturer->getAddresses($this->context->language->id); 

      if (isset($manufacturerAddress) && $manufacturerAddress[0]['country']) { 
       $this->context->smarty->assign(array(
        'manufacturer_country' => $manufacturerAddress[0]['country'], 
       )); 
      } 
     } 
    } 
} 

そして、あなたのTPLでそれを印刷するには:あなたは、コントローラをオーバーライドするとき

{$manufacturer_country|escape:'html':'UTF-8'} 

cache/class_index.phpを削除することを忘れないでください。

関連する問題