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
Plugin
ProductIdentitiesExtender.php
Go to the documentation of this file.
1
<?php
6
declare(strict_types=1);
7
8
namespace
Magento\ConfigurableProduct\Model\Plugin
;
9
10
use
Magento\ConfigurableProduct\Model\Product\Type\Configurable
;
11
use
Magento\Catalog\Api\ProductRepositoryInterface
;
12
use
Magento\Catalog\Model\Product
;
13
17
class
ProductIdentitiesExtender
18
{
22
private
$configurableType;
23
27
private
$productRepository;
28
33
public
function
__construct
(
Configurable
$configurableType,
ProductRepositoryInterface
$productRepository)
34
{
35
$this->configurableType = $configurableType;
36
$this->productRepository =
$productRepository
;
37
}
38
47
public
function
afterGetIdentities
(
Product
$subject, array $identities): array
48
{
49
foreach
($this->configurableType->getParentIdsByChild($subject->
getId
()) as $parentId) {
50
$parentProduct = $this->productRepository->getById($parentId);
51
$identities = array_merge($identities, $parentProduct->getIdentities());
52
}
53
54
return
array_unique($identities);
55
}
56
}
Magento\Catalog\Model\Product\getId
getId()
Definition:
Product.php:2654
$productRepository
$productRepository
Definition:
bundle_product_with_not_visible_children.php:18
Magento\ConfigurableProduct\Model\Plugin
Definition:
PriceBackend.php:6
Magento\Catalog\Api\ProductRepositoryInterface
Definition:
ProductRepositoryInterface.php:14
Magento\ConfigurableProduct\Model\Product\Type\Configurable
Definition:
AttributeTest.php:6
Magento\Catalog\Model\Product
Definition:
Product.php:42
Magento\Catalog\Model\Product
Definition:
ActionTest.php:6
Magento\ConfigurableProduct\Model\Plugin\ProductIdentitiesExtender\afterGetIdentities
afterGetIdentities(Product $subject, array $identities)
Definition:
ProductIdentitiesExtender.php:47
Magento\ConfigurableProduct\Model\Product\Type\Configurable
Definition:
Configurable.php:30
Magento\ConfigurableProduct\Model\Plugin\ProductIdentitiesExtender\__construct
__construct(Configurable $configurableType, ProductRepositoryInterface $productRepository)
Definition:
ProductIdentitiesExtender.php:33
Magento\ConfigurableProduct\Model\Plugin\ProductIdentitiesExtender
Definition:
ProductIdentitiesExtender.php:17