Мне удалось «исправить» это, изменив поведение кнопки «Оформить заказ».
Вместо того, чтобы просто перейти на страницу оформления заказа, он отправляет форму корзины.Чтобы потом перенаправить его на оформление заказа, он должен убедиться, что redirect_url установлен прямо перед отправкой.
Это код, который я ввел в шаблон / checkout / onepage / link.phtml:
<?php if ($this->isPossibleOnepageCheckout()):?>
<script type="text/javascript">
// <![CDATA[
function updateAndGoto(url) {
var cartForm = $$('.cart form').first();
var action = cartForm.readAttribute('action');
if (action.indexOf('return_url') < 0) {
var glue = action.indexOf('?') < 0 ? '?' : '&';
action += glue + 'return_url=' + url;
cartForm.writeAttribute('action', action);
}
cartForm.submit();
}
// ]]>
</script>
<button type="button" title="<?php echo $this->__('Proceed to Checkout') ?>" class="button btn-proceed-checkout btn-checkout<?php if ($this->isDisabled()):?> no-checkout<?php endif; ?>"<?php if ($this->isDisabled()):?> disabled="disabled"<?php endif; ?> onclick="updateAndGoto('<?php echo $this->getCheckoutUrl() ?>');"><span><span><?php echo $this->__('Proceed to Checkout') ?></span></span></button>
<?php endif?>