0 レビュー
1 回答
php-割り当てられた製品に対するMagentoのSOAP呼び出しとフィルター
バックエンドでのmagentoのsoap呼び出しに、Visibility = 4、status = 1、qty>0のフィルターを追加しようとしています。しかし、運が悪ければここに私のラインがあります:
$products = $client->call($session, 'catalog_category.assignedProducts' , $catId ) ;
これが私が試したことです:
$filters = array('status' => 1 , 'visibility' => 4 , 'qty' => array( '>' => 0 ) ) ;
$products = $client->call($session, 'catalog_category.assignedProducts' , $catId , $filters) ;
そしてこれ:
$filters = array( $catId ,'status' => 1 , 'visibility' => 4 , 'qty' => array( '>' => 0 ) );
$products = $client->call($session, 'catalog_category.assignedProducts' , $filters ) ;
しかし、上記のどれもうまくいきませんでした。応答として石鹸エラーが発生します。
フィルターを追加する理由を誰かに教えてもらえますか。
これにフィルターを追加する方法の例は見つかりませんでした。magentoを使用してさまざまなsoap呼び出しにフィルターを追加する方法を見つけることができるソースがあれば、それを大いに感謝します。
編集 誰かが私と同じ問題を抱えている場合は、SOAPで解決策を探すのをやめて、次のようにMagento APIを使用してください:
$category = Mage::getModel('catalog/category')->load($catId);
$products = Mage::getResourceModel('catalog/product_collection')
->addAttributeToSelect('*')
->addAttributeToFilter('status',1)
->addCategoryFilter($category)
->addAttributeToFilter('visibility',array('in' => Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH))
わからない
0
レビュー
答え :
解決策:
assignedProductsサービスでフィルターを使用することはできません。このサービスは非常に制限されており、1つのパラメーターのみを受け入れます。それはカテゴリーIDです。カテゴリ商品をフィルタリングする場合は、catalog.productListサービスを使用して、category_idsフィールドとフィルタリングするその他のフィールドでフィルタリングできます。
http://www.magentocommerce.com/api/soap/catalog/catalogProduct/catalog_product.list.html
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。