我正在使用Magento API V2。
当我致电 salesOrderCreditmemoInfo 时,我会收到一份回复,其中包含贷项通知单详细信息以及与订单相关联的产品列表。
但是在产品项列表中没有 product_type 属性。
我想手动编辑响应以添加此属性。
我尝试编辑: 应用\代码\核心\法师\ SALES \模型\订单\信用额凭证\ 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响应没有影响。
我是在寻找错误的地方,还是我需要更新其他内容?
答案 0 :(得分:8)
由于您使用的是SOAP V2,因此您应该更新 wsdl.xml
以获取输出。
对于您的情况, product_type 和刷新服务器上的缓存。 / tmp 加载已更新的新wsdl.xml
。别忘了去系统 - >缓存管理清除所有缓存。