2017-11-07 1 views
1

このコードを使用して、Magentoの私の製品ページに簡単な説明を表示します。私systemlogでコードは動作しますが、ログに「Missing argument 3」と表示されます

<?php $_description = $this->getProduct()->getShortDescription(); ?> 
<?php if ($_description): ?> 
<div class="std"> 
    <?php echo $this->helper('catalog/output')->productAttribute($this->getProduct(), nl2br($_description, 'short_description')) ?> 
</div> 
<?php endif; ?> 

それは言う: 警告:ライン4

しかし、ページの作業の罰金にMage_Catalog_Helper_Output :: productAttribute()の引数3がありません。しかし、私は本当にエラーがどこにあるか見ることができません。

+0

error_reporting(E_ALL)およびini_set( 'display_errors'、1);これらの2つをコードに追加してください。 – Robert

+0

productAttribute( '$ this-> getProduct()'、 'nl2br($ _ description、 'short_description')')この関数に2つの引数を渡しているようです。それはデフォルトの引数を持つかもしれないので、警告です。 –

答えて

2

カッコが間違っているようです。 'short_description'nl2brに属していません - それはproductAttribute()コールに属します。

echo $this->helper('catalog/output') 
       ->productAttribute($this->getProduct(), nl2br($_description), 'short_description'); 

このエラーは、3つのパラメータを必要とし、2つのパラメータを渡すだけの関数を呼び出すために発生します。 3番目のパラメータにはデフォルト値がないので、phpはthridパラメータがないことを警告します。 生産モードでmagentoを実行するので、警告はユーザーには決して印刷されず、単にvar/log/system.logに書き込まれます。

関連する問題