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-catalog-url-rewrite
Observer
ClearProductUrlsObserver.php
Go to the documentation of this file.
1
<?php
6
namespace
Magento\CatalogUrlRewrite\Observer
;
7
8
use
Magento\CatalogImportExport\Model\Import\Product
as
ImportProduct
;
9
use
Magento\Framework\App\ResourceConnection
;
10
use
Magento\UrlRewrite\Model\UrlPersistInterface
;
11
use
Magento\UrlRewrite\Service\V1\Data\UrlRewrite
;
12
use
Magento\CatalogUrlRewrite\Model\ProductUrlRewriteGenerator
;
13
use
Magento\Framework\Event\ObserverInterface
;
14
18
class
ClearProductUrlsObserver
implements
ObserverInterface
19
{
23
protected
$urlPersist
;
24
28
public
function
__construct
(
29
UrlPersistInterface
$urlPersist
30
) {
31
$this->urlPersist =
$urlPersist
;
32
}
33
40
public
function
execute
(\
Magento
\Framework\Event\
Observer
$observer
)
41
{
42
if
(
$products
=
$observer
->getEvent()->getBunch()) {
43
$oldSku =
$observer
->getEvent()->getAdapter()->getOldSku();
44
$idToDelete = [];
45
foreach
(
$products
as
$product
) {
46
$sku = strtolower(
$product
[ImportProduct::COL_SKU]);
47
if
(!isset($oldSku[$sku])) {
48
continue
;
49
}
50
$productData
= $oldSku[$sku];
51
$idToDelete[] =
$productData
[
'entity_id'
];
52
}
53
if
(!empty($idToDelete)) {
54
$this->urlPersist->deleteByData([
55
UrlRewrite::ENTITY_ID
=> $idToDelete,
56
UrlRewrite::ENTITY_TYPE
=>
ProductUrlRewriteGenerator::ENTITY_TYPE
,
57
]);
58
}
59
}
60
}
61
}
Magento\UrlRewrite\Model\UrlPersistInterface
Definition:
UrlPersistInterface.php:13
Magento\CatalogUrlRewrite\Observer
Definition:
CategoryProcessUrlRewriteSavingObserverTest.php:6
Magento\CatalogImportExport\Model\Import\Product
Magento\Framework\Event\ObserverInterface
Definition:
ObserverInterface.php:16
$products
$products
Definition:
products_for_search.php:14
Magento\CatalogUrlRewrite\Model\ProductUrlRewriteGenerator
Definition:
ProductUrlRewriteGenerator.php:21
Magento\CatalogUrlRewrite\Observer\ClearProductUrlsObserver
Definition:
ClearProductUrlsObserver.php:18
Magento\UrlRewrite\Service\V1\Data\UrlRewrite
Definition:
UrlRewrite.php:17
Magento\CatalogUrlRewrite\Model\ProductUrlRewriteGenerator\ENTITY_TYPE
const ENTITY_TYPE
Definition:
ProductUrlRewriteGenerator.php:26
Magento\UrlRewrite\Service\V1\Data\UrlRewrite\ENTITY_ID
const ENTITY_ID
Definition:
UrlRewrite.php:23
$observer
$observer
Definition:
second_website_with_second_currency.php:38
Magento
$productData
$productData
Definition:
products_virtual.php:38
Magento\UrlRewrite\Service\V1\Data\UrlRewrite\ENTITY_TYPE
const ENTITY_TYPE
Definition:
UrlRewrite.php:24
$product
$product
Definition:
bundle_product_with_not_visible_children.php:22
Magento\CatalogUrlRewrite\Observer\ClearProductUrlsObserver\__construct
__construct(UrlPersistInterface $urlPersist)
Definition:
ClearProductUrlsObserver.php:28
Magento\CatalogUrlRewrite\Observer\ClearProductUrlsObserver\execute
execute(\Magento\Framework\Event\Observer $observer)
Definition:
ClearProductUrlsObserver.php:40
Magento\Framework\App\ResourceConnection
Magento\Framework\Event\Observer
Definition:
Observer.php:14
Magento\CatalogUrlRewrite\Observer\ClearProductUrlsObserver\$urlPersist
$urlPersist
Definition:
ClearProductUrlsObserver.php:23