Magento Extensions Rating 2024
EXTENSIONS BY CATEGORY
B2B (Business-To-Business)
Blog
Customer
ERP (Enterprise Resource Planning)
Mega Menu
One Step Checkout
Order
POS (Point Of Sale)
Search
Shopping Cart
Sitemap
SEO
Social
Stock & Inventory Management
EXTENSIONS BY DEVELOPER
aheadWorks
Amasty
Boost My Shop
BSS Commerce
Magestore
MageWorx
Mirasvit
Templates Master
Wyomind
XTENTO
Magento 2 Documentation
Magento 2 Documentation
2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
vendor
magento
module-configurable-product
Model
Product
ReadHandler.php
Go to the documentation of this file.
1
<?php
6
namespace
Magento\ConfigurableProduct\Model\Product
;
7
8
use
Magento\Catalog\Api\Data\ProductInterface
;
9
use
Magento\ConfigurableProduct\Helper\Product\Options\Loader
;
10
use
Magento\ConfigurableProduct\Model\Product\Type\Configurable
;
11
use
Magento\Framework\EntityManager\Operation\ExtensionInterface
;
12
16
class
ReadHandler
implements
ExtensionInterface
17
{
21
private
$optionLoader;
22
28
public
function
__construct
(
Loader
$optionLoader)
29
{
30
$this->optionLoader = $optionLoader;
31
}
32
39
public
function
execute
(
$entity
,
$arguments
= [])
40
{
41
if
(
$entity
->getTypeId() !==
Configurable::TYPE_CODE
) {
42
return
$entity
;
43
}
44
45
$extensionAttributes
=
$entity
->getExtensionAttributes();
46
47
$extensionAttributes
->setConfigurableProductLinks($this->getLinkedProducts(
$entity
));
48
$extensionAttributes
->setConfigurableProductOptions($this->optionLoader->load(
$entity
));
49
50
$entity
->setExtensionAttributes(
$extensionAttributes
);
51
52
return
$entity
;
53
}
54
61
private
function
getLinkedProducts(
ProductInterface
$product
)
62
{
64
$typeInstance
=
$product
->getTypeInstance();
65
$childrenIds =
$typeInstance
->getChildrenIds(
$product
->getId());
66
67
if
(isset($childrenIds[0])) {
68
return
$childrenIds[0];
69
}
else
{
70
return
[];
71
}
72
}
73
}
Magento\ConfigurableProduct\Model\Product\ReadHandler\execute
execute($entity, $arguments=[])
Definition:
ReadHandler.php:39
Magento\ConfigurableProduct\Model\Product\ReadHandler
Definition:
ReadHandler.php:16
Magento\ConfigurableProduct\Model\Product
Definition:
SaveHandlerTest.php:8
Magento\Framework\EntityManager\Operation\ExtensionInterface
Definition:
ExtensionInterface.php:11
Magento\ConfigurableProduct\Model\Product\Type\Configurable\TYPE_CODE
const TYPE_CODE
Definition:
Configurable.php:35
Magento\Framework\Model\AbstractExtensibleModel\$extensionAttributes
$extensionAttributes
Definition:
AbstractExtensibleModel.php:30
$typeInstance
$typeInstance
Definition:
order_item_with_bundle_and_options.php:27
Magento\ConfigurableProduct\Model\Product\Type\Configurable
Definition:
AttributeTest.php:6
Magento\ConfigurableProduct\Model\Product\ReadHandler\__construct
__construct(Loader $optionLoader)
Definition:
ReadHandler.php:28
$entity
$entity
Definition:
element.phtml:22
$product
$product
Definition:
bundle_product_with_not_visible_children.php:22
$arguments
$arguments
Definition:
final_price.phtml:24
Magento\ConfigurableProduct\Helper\Product\Options\Loader
Definition:
Loader.php:17
Magento\Catalog\Api\Data\ProductInterface
Definition:
ProductInterface.php:14