2012-01-24 29 views
2

我有下面的代碼:Magento的API V1-列出所有產品的價格在一個呼叫

$filters = array('sku' => array('like'=>'%')); 
$items = $magConn->call($sessionID, 'product.list', array($filters)); 

這將返回所有的產品和他們的SKU,描述和數量的數組。 但是,我也需要得到價格?有沒有辦法得到這個呢?

我也得到了這個工作,

$properties = ($magConn->call($sessionID, 'product.info', $item['sku'])); 

將返回所有屬性的一個產品。我有超過2000種產品,如果我希望今晚結束,這絕對不可行。 ;)

回答

2

沒有辦法沒有magento源代碼修改。你應該去\app\code\core\Mage\Catalog\Model\Product\Api.php,發現裏面items()方法下一行:

 $result[] = array(// Basic product data 
      'product_id' => $product->getId(), 
      'sku'  => $product->getSku(), 
      'name'  => $product->getName(), 
      'set'  => $product->getAttributeSetId(), 
      'type'  => $product->getTypeId(), 
      'category_ids'  => $product->getCategoryIds() 
     ); 

這裏添加價格。

0

負載集合:

$product = Mage::getModel('catalog/product')->load($productId); 

獲取實際價格:

$product->getPrice(); 

獲取特惠價:

$product->getFinalPrice(); 
+0

當然,你應該首先從你的'$ items'變量中獲得'$ productId'。 –

+0

這不使用API​​。不是我所需要的。 – psyklopz

相關問題