2017-01-19 9 views
0

Prestashopで製品(カスタムフィールド)の更新に問題があります。私は、製品に通常の方法を保存するとき、それはかなりうまく動作しますhttp://blog.belvg.com/how-to-create-a-custom-product-tab-in-prestashop.htmlPrestashopカスタム製品フィールドの更新

私はチュートリアルを行いました。しかし、Prestashop 1.6には、在庫や価格を変更する際のオートセーブ機能があります。これは私のカスタムフィールドを空にします。裁判によって&エラー私は私のhookActionProductUpdate機能が問題を引き起こすこと、が分かったが、私はなぜ知らない:

public function hookActionProductUpdate($params) { 
    $id_product = Tools::getValue('id_product'); 
    $sampleObj = Belvg_Sample::loadByIdProduct($id_product); 
    $sampleObj->lagerplatz = Tools::getValue('lagerplatz'); 
    $sampleObj->artnrlfr = Tools::getValue('artnrlfr'); 
    $sampleObj->archiv = Tools::getValue('archiv'); 
    $sampleObj->bundle = Tools::getValue('bundle'); 
    $sampleObj->beschrieb = Tools::getValue('beschrieb'); 
    $sampleObj->oldartnr = Tools::getValue('oldartnr'); 

    $sampleObj->id_product = $id_product; 

    if(!empty($sampleObj) && isset($sampleObj->id)){ 
     $sampleObj->update(); 
    } else { 
     $sampleObj->add(); 
    } 
} 

それの何が問題になっているのですか?

答えて

0

は、私は通常更新機能

if(!Tools::getValue('CUSTOM_TAB_LOADED')) 
    return; 

に続いてフォーム

<input type="hidden" name="CUSTOM_TAB_LOADED" value="1"> 

でそれがロードされた場合にのみ、それを保存し、このように隠しフィールドを追加します。

+0

ありがとうございました!それは素晴らしいトリック:) –

関連する問題