Skip to content

Commit 8fe7c88

Browse files
committed
#23074: Magento 2.3.1 - URL rewrite rules are not creating for product after update url key
Loop through category store ids when regenerating product rewrite urls.
1 parent 6e534ad commit 8fe7c88

File tree

1 file changed

+13
-12
lines changed

1 file changed

+13
-12
lines changed

app/code/Magento/CatalogUrlRewrite/Observer/UrlRewriteHandler.php

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -138,19 +138,20 @@ public function generateProductUrlRewrites(Category $category): array
138138
$mergeDataProvider = clone $this->mergeDataProviderPrototype;
139139
$this->isSkippedProduct[$category->getEntityId()] = [];
140140
$saveRewriteHistory = (bool)$category->getData('save_rewrites_history');
141-
$storeId = (int)$category->getStoreId();
142141

143-
if ($category->getChangedProductIds()) {
144-
$this->generateChangedProductUrls($mergeDataProvider, $category, $storeId, $saveRewriteHistory);
145-
} else {
146-
$mergeDataProvider->merge(
147-
$this->getCategoryProductsUrlRewrites(
148-
$category,
149-
$storeId,
150-
$saveRewriteHistory,
151-
$category->getEntityId()
152-
)
153-
);
142+
foreach ($category->getStoreIds() as $storeId) {
143+
if ($category->getChangedProductIds()) {
144+
$this->generateChangedProductUrls($mergeDataProvider, $category, (int)$storeId, $saveRewriteHistory);
145+
} else {
146+
$mergeDataProvider->merge(
147+
$this->getCategoryProductsUrlRewrites(
148+
$category,
149+
(int)$storeId,
150+
$saveRewriteHistory,
151+
$category->getEntityId()
152+
)
153+
);
154+
}
154155
}
155156

156157
foreach ($this->childrenCategoriesProvider->getChildren($category, true) as $childCategory) {

0 commit comments

Comments
 (0)