Вопрос

при использовании переключателя языка magento сгенерированный URL-адрес:

a href="http://www.shop.com/index.php/bags/eastpak.html?___store=en&___from_store=default">

Используется Magento версии 1.7.

Как я могу преобразовать это & к &?

Является ли класс Redirect Magento причиной этой ошибки?

Это было полезно?

Решение

Кажется, это правильно.Пожалуйста, посмотрите на https://stackoverflow.com/questions/3705591/do-i-Коде-ampersands-in-a-href

Другие советы

Это раздражает, особенно на страницах со списком товаров, когда URL содержит все параметры поиска.

Чтобы этого избежать, необходимо внести некоторые изменения в два файла:

1) в Mage_Core_Controller_Varien_Action

под

protected function _redirectReferer($defaultUrl=null)
{

    $refererUrl = $this->_getRefererUrl();
    if (empty($refererUrl)) {
        $refererUrl = empty($defaultUrl) ? Mage::getBaseUrl() : $defaultUrl;
    }

    $this->getResponse()->setRedirect($refererUrl);
    return $this;
}

добавлять

protected function _redirectRefererNoSpecialChars($defaultUrl=null)
{

    $refererUrl = $this->_getRefererUrl();
    $refererUrl = htmlspecialchars_decode($refererUrl, ENT_NOQUOTES);//this needs to be added

    if (empty($refererUrl)) {
        $refererUrl = empty($defaultUrl) ? Mage::getBaseUrl() : $defaultUrl;
    }

    $this->getResponse()->setRedirect($refererUrl);
    return $this;
}

2) в Mage_Directory_CurrencyController

изменять $this->_redirectReferer(Mage::getBaseUrl());

с $this->_redirectRefererNoSpecialChars(Mage::getBaseUrl());

Спасибо, Мариус.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top