3
問題很簡單,我如何通過REST API Magento 2通過簡單產品獲得可配置產品?如何通過簡單產品Magento 2 rest來配置API
我用下面的調用來獲取簡單的產品:
http://127.0.0.1/magento2/index.php/rest/V1/products/prdConfig-RED
謝謝
問題很簡單,我如何通過REST API Magento 2通過簡單產品獲得可配置產品?如何通過簡單產品Magento 2 rest來配置API
我用下面的調用來獲取簡單的產品:
http://127.0.0.1/magento2/index.php/rest/V1/products/prdConfig-RED
謝謝
我創建了孩子接受產品ID作爲參數,並返回父產品一個新的模塊ID和其他屬性,如姓名,縮略圖....
registeration.php
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'WebAPI_GetParentProductThumbnail',
__DIR__
);
等/ module.xml
<?xml version="1.0" ?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="WebAPI_GetParentProductThumbnail" setup_version="1.0.0"/>
</config>
等/ di.xml
<?xml version="1.0" ?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<preference for="WebAPI\GetParentProductThumbnail\Api\ChildThumbnailManagementInterface" type="WebAPI\GetParentProductThumbnail\Model\ChildThumbnailManagement"/>
</config>
等/ webapi.xml
<?xml version="1.0" ?>
<routes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Webapi:etc/webapi.xsd">
<route method="GET" url="/V1/webapi-getparentproductthumbnail/childthumbnail">
<service class="WebAPI\GetParentProductThumbnail\Api\ChildThumbnailManagementInterface" method="getChildThumbnail"/>
<resources>
<resource ref="anonymous"/>
</resources>
</route>
</routes>
阿比/ ChildThumbnailManagementInterface.php
<?php
namespace WebAPI\GetParentProductThumbnail\Api;
interface ChildThumbnailManagementInterface
{
/**
* GET for ChildThumbnail api
* @param string $product_id
* @return string
*/
public function getChildThumbnail($product_id);
}
型號/ ChildThumbnailManagement.php
<?php
namespace WebAPI\GetParentProductThumbnail\Model;
class ChildThumbnailManagement
{
/**
* {@inheritdoc}
*/
public function getChildThumbnail($product_id)
{
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
if($product_id != ""){
//This method getParentIdsByChild($child_id) get the parent id of a configurable product.
$parent_product = $objectManager->create('Magento\ConfigurableProduct\Model\ResourceModel\Product\Type\Configurable')->getParentIdsByChild($product_id);
if(isset($parent_product[0]))
{
$parent_id = $parent_product[0];
//Parent object where you can get Thumbnail, name.... etc
//$parent_object = $objectManager->create('Magento\Catalog\Model\Product')->load($parent_product[0]);
echo parent_id;
}
}
return null;
}
}