Корзина Magento не обновляет количество в представлении арабского магазина
У меня следующая проблема с установкой Magento 1.8.1. У меня есть два вида магазина: английский, который используется по умолчанию, и арабский.
В представлении магазина на английском языке, если я добавляю товар в корзину, я могу изменить количество, введя новое количество в поле количество и нажав Обновить корзину, что изменит количество и итоговые значения.
Однако, когда я переключаюсь на просмотр магазина на арабском языке, я не могу обновить количество каких-либо товаров. Я ввожу требуемое количество и нажмите обновить, но страница перезагружается только с 1 частью продукта, и итоговые значения не меняются. Я протестировал и заметил, что корзина обновляется только для количеств свыше 31.
Я попробовал/проверил следующее:
- Эта строка присутствует в файле cart.phtml - getBlockHtml('ключ формы'); ?>
- Эта строка присутствует в файле cart.phtml - getChildHtml('form_before')?>
- Ошибок Javascript нет
- Я использую корзину по умолчанию функциональность, без Ajax или чего-либо еще.
- Я попытался заменить файл cart.phtml исходным файлом в базовой папке, поведение такое же.
- Я попытался добавить идентификатор магазина в URL-адрес, это не решило проблему.
- Очистил кэш вручную.
- В журналах php нет ошибок.
- Я настроил Управление запасами в каталоге/инвентаре и переиндексировал, это не решило проблему.
Любые идеи будут очень полезны оцененный.
Спасибо, Алекс
1 answers
Попробуйте удалить этот код
if (isset($params['qty'])) {
$filter = new Zend_Filter_LocalizedToNormalized(
array('locale' => Mage::app()->getLocale()->getLocaleCode())
);
$params['qty'] = $filter->filter($params['qty']);
}
Из app\code\core\Mage\Checkout\controllers\CartController.php (строка 183)
И удалить
if (isset($data['qty'])) {
$cartData[$index]['qty'] = $filter->filter(trim($data['qty']));
}
Из app\code\core\Mage\Checkout\controllers\CartController.php (строка 428)
Также удалите
if (isset($params['qty'])) {
$filter = new Zend_Filter_LocalizedToNormalized(
array('locale' => Mage::app()->getLocale()->getLocaleCode())
);
$params['qty'] = $filter->filter($params['qty']);
}
Из app\code\core\Mage\Checkout\controllers\CartController.php (строка 327)