// https://github.com/magento/magento2/issues/12615 // https://github.com/magento/magento2/pull/31229/files From e7b6c4a427f84848b609fc109533eecfac829b9b Mon Sep 17 00:00:00 2001 From: Andreas Schrammel Date: Wed, 9 Dec 2020 15:48:22 +0100 Subject: [PATCH] Preserve query parameters on base URL redirect Preserve query parameters after the store redirects a URL to it's configured base URL if there are any present. --- .../App/FrontController/Plugin/RequestPreprocessor.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/vendor/magento/module-store/App/FrontController/Plugin/RequestPreprocessor.php b/vendor/magento/module-store/App/FrontController/Plugin/RequestPreprocessor.php index de2da5442382..9a9ab730113e 100644 --- a/vendor/magento/module-store/App/FrontController/Plugin/RequestPreprocessor.php +++ b/vendor/magento/module-store/App/FrontController/Plugin/RequestPreprocessor.php @@ -80,7 +80,13 @@ public function aroundDispatch( $uri = parse_url($baseUrl); if (!$this->getBaseUrlChecker()->execute($uri, $request)) { $redirectUrl = $this->_url->getRedirectUrl( - $this->_url->getDirectUrl(ltrim($request->getPathInfo(), '/'), ['_nosid' => true]) + $this->_url->getDirectUrl( + ltrim($request->getPathInfo(), '/'), + [ + '_nosid' => true, + '_query' => $request->getQuery()->toArray() + ] + ) ); $redirectCode = (int)$this->_scopeConfig->getValue( 'web/url/redirect_to_base',