-3

Magento の製品のステータスがどのように変更/保存されるか知りたいですか?

要件-:

Magento で有効になっている既存の製品があるとします...管理者がバックエンドから特定の製品を無効にする場合、Magento ファイル システムのコードを介してその特定の製品の ID を取得する必要がありますか?

では、Magento コードで無効になっている製品の ID をどこから取得できますか? 同じファイルの場所と関数名は何ですか? その特定のIDを取得するにはどうすればよいですか?

私を案内してください...

4

1 に答える 1

2

ここでの反対票は少し不公平だと思います。op は 1 つの質問をするだけです - 保存された後に製品 ID と製品のステータスを取得する方法です。

@Sam - Magento では、製品が保存されているコード内の正確なポイントを見つける代わりに、通常、カスタム モジュールを作成してイベントにフックし、そのモジュール内から Magento イベント/オブザーバー機能を使用します。

イベント/オブザーバーを使用してモジュールを作成するプロセスをガイドするこのチュートリアルをご覧ください。

特にあなたの質問に関連しています: あなたが探しているイベントは ですcatalog_product_save_after.

イベントの xml は次のようになります。

<events>
  <catalog_product_save_after>
    <observers>
      <yourmodule>
        <class>Yourcompany_Yourmodule_Model_Observer</class>
        <method>catalog_product_save_after</method>
      </yourmodule>
    </observers>
  </catalog_product_save_after>     
</events>

オブザーバーは次のようになります。

class Yourcompany_Yourmodule_Model_Observer 
{
    public function catalog_product_save_after($observer)
    {
        $product = $obvserver->getEvent()->getProduct();

        $productStatus = $product->getStatus();
        $productId = $product->getId();
    }
}

注 - コードはテストされていません

于 2012-06-01T22:51:31.657 に答える