gpt4 book ai didi

php - Magento API : Get products/details with media in one call

转载 作者:搜寻专家 更新时间:2023-10-31 21:36:40 25 4
gpt4 key购买 nike

我不知道是否有可能在无需执行多个 .call() 的情况下获取带有产品列表的媒体列表

multiCall() 是某种选择吗?我必须从 multiCall() 中的第一个调用返回值才能插入到第二个检索媒体的调用中,但我认为 Magento 的文档很差。

我是否必须创建自己的 API 扩展来做一些简单的事情,比如返回包含产品详细信息的图片 URL?

这是我目前拥有的:

<?php
$soap = new SoapClient('http://hello-magento.local/magento/api/soap?wsdl');
$session_id = $soap->login('username', 'password');

$product_list = $soap->call($session_id, 'product.list');

$products = array();

foreach($product_list as $product_item)
{
$product_id = $product_item['product_id'];
$product_image = $soap->call($session_id, 'catalog_product_attribute_media.list', $product_id);

$product_details = array();
$product_details['id'] = $product_id;
$product_details['name'] = $product_item['name'];
$product_details['image'] = $product_image[0]['url'];

$products['products'][] = $product_details;
}

$soap->endSession($session_id);

echo json_encode($products);
?>

最佳答案

我有一个类似的问题,我想在获取订单列表时获得有关订单商品的更多信息。我能够通过创建一个带有观察者的模块来解决这个问题。每当加载订单模型时,我都可以执行 $order->setMyCustomValue($orderItemInfo) 并且当我执行 order.list 请求时该数据会显示。

查看 Mage_Catalog_Model_Product_Api,基本产品信息(product_id、sku、名称等)都硬编码在 items 方法(product.list 调用)中。我看到的唯一方法是创建一个自定义模块来覆盖和扩展 Mage_Catalog_Model_Product_Api。调用 parent items 方法,然后将您需要的数据添加到结果(例如媒体 url)并返回。

自定义 API 也可以,但会多一些工作。

关于php - Magento API : Get products/details with media in one call,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17680738/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com