diff --git a/vendor/magento/module-email/Model/Plugin/GetUrl.php b/vendor/magento/module-email/Model/Plugin/GetUrl.php
new file mode 100644
index 00000000000..f64e07dee2a
--- /dev/null
+++ b/vendor/magento/module-email/Model/Plugin/GetUrl.php
@@ -0,0 +1,34 @@
+getCode();
+
+ return [$store, $route, $params];
+ }
+}
diff --git a/vendor/magento/module-email/Model/Template/Filter.php b/vendor/magento/module-email/Model/Template/Filter.php
index 648e4ab8fc3..d1d54fd0567 100644
--- a/vendor/magento/module-email/Model/Template/Filter.php
+++ b/vendor/magento/module-email/Model/Template/Filter.php
@@ -567,6 +567,13 @@ class Filter extends \Magento\Framework\Filter\Template
unset($params['url']);
}
+ /**
+ * Pass extra parameter to distinguish stores urls for property Magento\Framework\Url $cacheUrl
+ * in multi-store environment
+ */
+ $this->urlModel->setScope($this->_storeManager->getStore());
+ $params['_escape_params'] = $this->_storeManager->getStore()->getCode();
+
return $this->urlModel->getUrl($path, $params);
}
diff --git a/vendor/magento/module-email/etc/di.xml b/vendor/magento/module-email/etc/di.xml
index 5f6e30d591b..31b807ff53a 100644
--- a/vendor/magento/module-email/etc/di.xml
+++ b/vendor/magento/module-email/etc/di.xml
@@ -61,6 +61,9 @@
+
+
+