リモート リソースから製品を追加するモジュールを作成しましたが、製品がブラウザに表示される前に価格と在庫状況を確認したいと考えています。
Bootstrap モジュールで変更しようとしました:
<?php
public function hookHeader($params)
{
$controller = $this->context->controller;
if(!($controller instanceof ProductController)) {
return;
};
/* @var $controller ProductController */
$product = $controller->getProduct();
$product->name = 'Test Name';
$product->price = 20;
$product->quantity = 5;
$product->update();
}
ただし、古い値は既にテンプレートに含まれています。
次に、ProductController をオーバーライドしようとしました。
<?php
public function init()
{
parent::init();
$product = $this->product;
/* @var $product Product */
$product->price = 10;
$product->quantity = 10;
$product->update();
}
しかし、最初の例と同じことが起こります。
質問は次のとおりです。
- 出力に描画される前に、リモート データをチェックして製品を更新するのに最適な場所はどこですか?
- 価格と数量を更新する最良の方法は? クラスに直接、または StockAvailableCore クラスを使用しますか?