Я получаю список продуктов, используя catalog_product.list.Это займет менее секунды, чтобы получить это около 700 продуктов.Затем я перебираю каждый продукт, используя catalog_product.info, чтобы получить такие значения, как цена.Но это занимает очень много времени ~ 180 сек.Есть ли лучший способ сделать это?
Я выводил продукты как csv, xml и json только с полями "sku", "name", "price" и "short_description".Я получил sku и имя из catalog_product.list.Я не смог найти какой-либо способ получения цены и короткого описания, поэтому я просмотрел продукты, чтобы получить информацию, используя catalog_product.info (catalog_product.info для 1 продукта занимает около 2 секунд.) Вот веб-сайт API https://devdocs.magento.com/guides/m1x/api/soap/catalog/catalogProduct/catalog_product.list.html
$products = $client->call($sessionId, "catalog_product.list");
echo "<pre>";
print_r($products);
$cleanProducts=[];
// foreach($products as $product){
for($i=0; $i<5; $i++){
$product=$products[$i];
$catalogProductReturnEntity = $client->call($sessionId, 'catalog_product.info', $product['product_id'] );
$cleanProduct = [];
$cleanProduct['sku']=$product['sku'];
$cleanProduct['name']=$product['name'];
// $cleanProduct['price'] = $catalogProductReturnEntity['price'];
// $cleanProduct['short_description'] = $catalogProductReturnEntity['short_description'];
$fields = [ 'price', 'short_description'];
foreach($fields as $field){
if(isset($catalogProductReturnEntity[$field])!=null){
$cleanProduct[$field] = $catalogProductReturnEntity[$field];
}
}
$cleanProducts[] = $cleanProduct;
}
echo "<pre>";
print_r($cleanProducts);
API не имеет смысла так долго.Кто-нибудь нашел самый быстрый способ сделать это?Я не использовал Module: Mage_Catalog, так как это всего лишь оценочный тест.И я ограничен в использовании Magento-1.9 и SOAPv1.Дайте мне знать, если есть возвращаемое содержимое, которое дает больше информации в списке.
Первый массив взят из Info из catalog_product.list Второй массив взят из Info из catalog_product.info Третий массив генерируется из кода.
Мой вопрос: есть ли ярлык наMagento SOAP для получения 3-го массива без прохождения 1-го и 2-го шага?