gpt4 book ai didi

php - 使用 Magento Soap Api 上传产品图片时如何指定文件名

转载 作者:行者123 更新时间:2023-12-04 14:42:17 25 4
gpt4 key购买 nike

我正在使用 Magento Soap Api 上传产品图片。我似乎无法指定我希望 Magento 的名称,因此即使我根据 Magento 文档指定了“名称”,也将文件保存在服务器上。

我使用的是 Magento 1.2.1.2,但无法升级,因为该网站使用的模块在较新版本中出现问题。

关于如何指定 Magento 保存图像的文件名有什么想法吗?

我使用的代码:

$client->call(
$session_id,
'catalog_product_attribute_media.create',
array(
$sku,
array(
'file' => array(
'content' => base64_encode(file_get_contents($filename)),
'mime' => $imageinfo['mime'],
'name' => $filename
),
'label' => $description,
'types' => array(
'image',
'small_image',
'thumbnail'
),
'exclude' => FALSE
)
)
);

最佳答案

您不能指定文件名。唯一的解决方案是更改 Magento 文件以允许使用 this thread 中建议的文件名.为了您的方便,我在下面提供了解决方案(并根据您将文件名作为上面的 name 发送的事实对其进行了调整):

修改./app/code/core/Mage/Catalog/Model/Product/Attribute/Media/Api.php:

您需要替换 $fileName = 'image.' . $this->_mimeTypes[$data['file']['mime']]; 有:

if ( ! empty($data['file']['name']) )
$fileName = $data['file']['name'];
else
$fileName = 'image.' . $this->_mimeTypes[$data['file']['mime']];

如果您觉得有点冒险,您可以扩展类而不是更改它并用您自己的功能覆盖 create 函数。

关于php - 使用 Magento Soap Api 上传产品图片时如何指定文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6629540/

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