"Иногда" не работает корзина miniShop2
Построил сайт интернет-магазин на miniShop2. Сейчас в эксплуатации: http://baltgaz.ru/shop/ Некоторые посетители жалуются, что невозможно добавить товар в корзину. Не обращал внимание, списывал на техническую неграмотность некоторых пользователей в интернете, так как я перепробовал все возможные браузеры и устройства — всё исправно работает. Но:
При попытке разместить товары в Яндекс.Маркете техподдержка упорно отвечала, что Корзина не работает. Через знакомого аккаунт-менеджера в Яндексе удалось надавить на техподдержку и они записали следующее видео:
http://www.youtube.com/watch?v=hvvwM8dlqjQ
Прошу помочь понять — в чём может быть проблема? Не могу её устранить банально потому, что не могу её воспроизвести.
При попытке разместить товары в Яндекс.Маркете техподдержка упорно отвечала, что Корзина не работает. Через знакомого аккаунт-менеджера в Яндексе удалось надавить на техподдержку и они записали следующее видео:
http://www.youtube.com/watch?v=hvvwM8dlqjQ
Прошу помочь понять — в чём может быть проблема? Не могу её устранить банально потому, что не могу её воспроизвести.
Комментарии: 18
Судя по видео, там и в миникорзине товары то есть, то нет.
Скажи честно, на сайте один контекст, или несколько? Было бы неплохо еще и ссылку дать, чтобы самостоятельно покликать.
Скажи честно, на сайте один контекст, или несколько? Было бы неплохо еще и ссылку дать, чтобы самостоятельно покликать.
Ссылка уже была http://baltgaz.ru/shop/
Контекстов несколько (под разные города), я тоже про них подумал… Но в представленном видео пользователь находится в пределах одного контекста. Потому что в других ещё просто не создана страница просмотра Корзины…
Контекстов несколько (под разные города), я тоже про них подумал… Но в представленном видео пользователь находится в пределах одного контекста. Потому что в других ещё просто не создана страница просмотра Корзины…
Да, проглядел ссылку.
В общем, проблема явно с доступом к сессии, и тут 2 варианта:
1. У работников Яндекса действительно отключены куки, в чем я сильно сомневаюсь.
2. Сессионная кука неправильно выставляются, и поэтому сессия не загружается. Я это повторить не могу, но может стоит выставлять её для всего домена, а не только для директории /shop/.
Можно попробовать покрутить системные настройки, ответственные за сессию.
В общем, проблема явно с доступом к сессии, и тут 2 варианта:
1. У работников Яндекса действительно отключены куки, в чем я сильно сомневаюсь.
2. Сессионная кука неправильно выставляются, и поэтому сессия не загружается. Я это повторить не могу, но может стоит выставлять её для всего домена, а не только для директории /shop/.
Можно попробовать покрутить системные настройки, ответственные за сессию.
Могу в принципе и админский доступ в скайпе скинуть, сейчас только бекап сделаю :)
Зашел в инкогнито google chrome.
Первый товар нормально добаялвется, последующие добавляются, но не отображаются в корзине.
Товары в корзине появляются после еще одного обновления страницы. У Вас кешированный вызов?
Первый товар нормально добаялвется, последующие добавляются, но не отображаются в корзине.
Товары в корзине появляются после еще одного обновления страницы. У Вас кешированный вызов?
Некэшированный
У меня в Google Chrome в инкогнито всё добавляется без проблем.
У работников яндекс отключено использование кук вот и все…
p.s. отключаем куки и получаем пустую корзину — g.recordit.co/b7rMRXzQu3.gif
p.s. отключаем куки и получаем пустую корзину — g.recordit.co/b7rMRXzQu3.gif
но может стоит выставлять её для всего домена, а не только для директории /shop/Парни, если вы обратите внимание, в данном проекте сайт MODX внутри сайта MODX :)
То есть основной сайт компании по адресу baltgaz.ru,
и на хостинге создана папочка /shop/, поэтому по адресу baltgaz.ru/shop/ уже совсем другой сайт.
История очень длинная, почему так надо было сделать, не буду углубляться…
Поэтому то, что MODX автоматом ставит куки не для всего сайта, а только для /shop/ — это очень даже хорошо и правильно.
Поэтому я начинаю верить в то, что у некоторых модераторов Яндекса правда отключены куки… Вопрос как теперь с этим поступить?
Есть возможность настроить корзину miniShop2 без использования куки, а через сессии?
Корзина miniShop2 и так не использует куки, а работает только через сессию.
А вот для работы самих сессий нужна как минимум одна кука, куда будет сохраняться id сессии, чтобы сервер знал, что именно для тебя загружать.
В общем, магазин без кук у юзера работать не сможет. Ну, насколько я понимаю.
А вот для работы самих сессий нужна как минимум одна кука, куда будет сохраняться id сессии, чтобы сервер знал, что именно для тебя загружать.
В общем, магазин без кук у юзера работать не сможет. Ну, насколько я понимаю.
Хм… логично…
Вообще есть вот ещё какой вариант: php.net/manual/ru/session.idpassing.php
Сейчас проверил, действительно. При отключенных куки корзина не работает.
Причина найдена, спасибо участникам.
Как считаете, как следует поступить в такой ситуации?
Причина найдена, спасибо участникам.
Как считаете, как следует поступить в такой ситуации?
Через знакомого аккаунт-менеджера в Яндексе удалось надавить на техподдержку и они записали следующее видеоА узнайте у него действительно куки отключены и с какой целью?
Сомневаюсь, что у сотрудников в Яндексе отключены куки.
Это наверное 90% интернет-магазинов перестанет работать.
Мне кажется проблема в чем-то другом.
К тому же (если видео не смонтировано) видно начиная с 17 секунды что у него корзина пустая, а при переходе на другую страницу вдруг оказывается что в ней 1 товар.
А чуть дальше он добавляет товар в корзину и товаров в мини-корзине становится 2.
Что значит нет куков. Это значит при любом запросе будет пустая корзина.
Кол-во товаров в корзине минишоп возвращает, а не считается на JS.
Так что при отсутствии кук 2 товара в корзине никак быть не может.
Первое что я заметил и попробовал бы поменять:
1. Сайты baltgaz.ru и baltgaz.ru/shop/ хоть и разные, но домены одинаковые и используют одно имя для сессионной куки — PHPSESSIONID. Не знаю влияет ли это, но я бы на одном из сайтов указал другое имя. Имя можно указать в настройке MODX session_name
2. Нет редиректа с www.baltgaz.ru/shop/
Если добавить что-то в корзину на сайте без www и перейти вручную на домен с www, то корзина очищается. Но ссылки по прежнему введут на baltgaz.ru/shop/
Может в этом все дело? Нужно оставить какой-то один сайт.
Это наверное 90% интернет-магазинов перестанет работать.
Мне кажется проблема в чем-то другом.
К тому же (если видео не смонтировано) видно начиная с 17 секунды что у него корзина пустая, а при переходе на другую страницу вдруг оказывается что в ней 1 товар.
А чуть дальше он добавляет товар в корзину и товаров в мини-корзине становится 2.
Что значит нет куков. Это значит при любом запросе будет пустая корзина.
Кол-во товаров в корзине минишоп возвращает, а не считается на JS.
Так что при отсутствии кук 2 товара в корзине никак быть не может.
Первое что я заметил и попробовал бы поменять:
1. Сайты baltgaz.ru и baltgaz.ru/shop/ хоть и разные, но домены одинаковые и используют одно имя для сессионной куки — PHPSESSIONID. Не знаю влияет ли это, но я бы на одном из сайтов указал другое имя. Имя можно указать в настройке MODX session_name
2. Нет редиректа с www.baltgaz.ru/shop/
Если добавить что-то в корзину на сайте без www и перейти вручную на домен с www, то корзина очищается. Но ссылки по прежнему введут на baltgaz.ru/shop/
Может в этом все дело? Нужно оставить какой-то один сайт.
Ну похожий эффект пустой корзины наблюдался мной на одном из магазинов который взялся продвигать 'Демис'. Там сайт без всяких поддоменов и все работает, а глюк был такой же…
Конечно же я не уточнял у них что было… Но я думаю, что то у них с яндексом есть общее когда они сайты серфят.
p.s. если фигню написал то в силу малограмотности… простите.
Конечно же я не уточнял у них что было… Но я думаю, что то у них с яндексом есть общее когда они сайты серфят.
p.s. если фигню написал то в силу малограмотности… простите.
Сайты baltgaz.ru и baltgaz.ru/shop/ хоть и разные, но домены одинаковые и используют одно имя для сессионной куки — PHPSESSIONID. Не знаю влияет ли это, но я бы на одном из сайтов указал другое имя. Имя можно указать в настройке MODX session_nameКстати, есть ненулевая вероятность, что должно помочь. Хороший совет!
Мой совет — вынести магазин на поддомен shop.sitename.ru
Помню тоже были проблемы с сайтом внутри сайта, связанные с сессиями. Деталей сейчас не помню. Гуглил и разбирался долго, но единственно верным решением был перенос на поддомен.
Когда сайт — это папка внутри другого сайта, то это проблема. Всегда найдётся юзер, у которого куки для папок будут не правильно работать.
А если основной сайт на revo, то просто в нём и сделать магазин.
Понимаю, что проблема историческая, либо в упёртости заказчика, но реально — лучше новый поддомен или доработка основного сайта.
Ваша задача — убедить в этом заказчика)
Помню тоже были проблемы с сайтом внутри сайта, связанные с сессиями. Деталей сейчас не помню. Гуглил и разбирался долго, но единственно верным решением был перенос на поддомен.
Когда сайт — это папка внутри другого сайта, то это проблема. Всегда найдётся юзер, у которого куки для папок будут не правильно работать.
А если основной сайт на revo, то просто в нём и сделать магазин.
Понимаю, что проблема историческая, либо в упёртости заказчика, но реально — лучше новый поддомен или доработка основного сайта.
Ваша задача — убедить в этом заказчика)
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.