Magento API V2 を使用しています。
salesOrderCreditmemoInfoを呼び出すと、クレジット メモの詳細と注文に関連付けられた製品のリストを含む応答が返されます。
しかし、商品アイテムのリストにはproduct_type属性がありません。
応答を手動で編集して、この属性を追加したいと考えています。
編集してみました: app\code\core\Mage\Sales\Model\Order\Creditmemo\Api.php
そして置き換え:
public function info($creditmemoIncrementId)
{
...
$result['items'] = array();
foreach ($creditmemo->getAllItems() as $item) {
$result['items'][] = $this->_getAttributes($item, 'creditmemo_item');
}
次の場合 - (基本的に、配列に追加の属性を追加します):
public function info($creditmemoIncrementId)
{
...
$result['items'] = array();
foreach ($creditmemo->getAllItems() as $item) {
$product_type = '1'; //test value to check if works
$attribs = $this->_getAttributes($item, 'creditmemo_item');
$attribs['product_type'] = $product_type;
$result['items'][] = $attribs;
}
mage::log($result) を実行すると、余分な属性が配列に正しく追加されているようです。(この関数が呼び出される関数であることも示します) しかし、実際の API 応答には影響しません。
私は完全に間違った場所を探していますか、それとも他に更新する必要があるものがありますか?