У нас есть 2 магазина (обновление 1.7.0.2 с версии 1.5.1 и установка 1.6) , в обоих из которых есть проблема, из-за которой в некоторых заказах отсутствует адрес электронной почты (customer_email в sales_flat_order) . Хранилища - это две совершенно разные установки, и единственное, что я обнаружил, это то же самое в обеих версиях, что они оба используют OneStepCheckout (последняя версия) и что проблема видна только для клиентов (но не всех), у которых уже есть учетная запись клиента. , Я предполагаю, что проблема в учетной записи клиента, но я не могу найти ничего странного с этими учетными записями.
Любые идеи о том, где проверить или как отладить эту проблему?
Спасибо.
orders
ce-1.7.0.2
upgrade
Владимир Керхофф
источник
источник
Ответы:
Убедитесь, что вы используете OSC 4.0.7.
У нас была эта проблема с использованием Magento 1.7.0.2 и OSC 4.0.6. Это оказалось ошибкой в OneStepCheckout, когда он не обрабатывал пользователей, правильно распознаваемых постоянной корзиной покупок. Мы сообщили об этом OSC, и они дали нам исправление (но я думаю, что оно было исправлено в 4.0.7: http://www.onestepcheckout.com/wiki/index.php/Changelogs#OneStepCheckout_4.0.7_changes
Grep для
$this->getQuote()->setCustomerId(0);
в app \ code \ local \ Idev \ OneStepCheckout \ Block \ Checkout.php (должно дать 5 совпадений), так как это было в основном исправление.Изменить: это должен был быть комментарий .. на самом деле это не ответ.
источник
ПРИМЕЧАНИЕ. По сути, это не ответ, но я хотел бы добавить свой собственный опыт по этому вопросу, чтобы мне было проще его отформатировать.
Я видел ту же проблему. Это то, что у меня не было возможности полностью вникнуть, но из того, что я увидел, это сочетание следующих факторов:
Если клиент ранее зарегистрировался на сайте, но не вошел в систему , и постоянная корзина включена (или, действительно, файл cookie присутствует для покупателя после того, как постоянная корзина была отключена), то, похоже, проблема возникает.
Я не видел, чтобы это происходило с клиентами, которые не зарегистрировались, но меня удивляет, связано ли это с общей учетной записью компьютера и двумя разными клиентами, один из которых зарегистрировался, а другой - нет.
Я собираюсь продолжить расследование и этого, мы автоматически привязываем клиента к группе клиентов, поэтому это означает, что заказ не назначен группе клиентов.
Изменить: мы используем Firecheckout, а не OSC
источник
Мы также используем OSC, и эта проблема возникает на нашем сайте. Я думаю, что это происходит в неосновных расширениях проверки. В основном Magento, если вы включите постоянную корзину, то гостевые клиенты будут вынуждены зарегистрироваться или войти в систему, поэтому адрес электронной почты будет существовать всегда. Некоторые расширения оформления заказа (например, OSC) не применяют это ограничение, поэтому вы попадаете в сценарий, которого основной код не ожидает.
источник