У меня перенаправление с контроллера, и я хочу изменить этот URL перенаправления внутри плагина.
Вот как это выглядит в настоящее время.
Контроллер:
...
$this->messageManager->addSuccessMessage(__('Invitation to corporate account accepted.'));
$this->corporateManagement->setCorporateSessionVars($customer->getId());
return $this->_redirect($this->_url->getUrl('corporate/users'));
И Я хочу изменить это перенаправление, чтобы перенаправить на другой URL (должен быть с плагином). Вот как я пытался добиться этого с помощью плагина и работы плагина $ результат изменен, но пользователь по-прежнему перенаправлен на URL внутри контроллера, а не на тот, что из плагина.
Плагин:
public function afterExecute(\Iways\Corporate\Controller\Invitation\Accept $subject, $result)
{
$corporateBranding = $this->corporateBrandingManagement->getCorporateBranding();
if ($corporateBranding && $corporateBranding->getStoreGroupId()) {
$storeGroup = $this->storeManager->getGroup($corporateBranding->getStoreGroupId());
$store = $this->storeManager->getStore($storeGroup->getDefaultStoreId());
$redirectUrl = $store->getBaseUrl().'corporate/users';
$result = $this->redirect->getRedirect($redirectUrl);
}
return $result;
}
Важное примечание: Все свойства и методы работают правильно, $ result заполняется другим перенаправлением и возвращается $ result, но пользователь перенаправляется на URL-адрес контроллера, а не на URL-адрес плагина.