miniShop2 и выключенный javascript
Василий, доброе время суток!
А работоспособность minishop'а на фронтенде при выключенном javascript'е стремится к нулю, как я понимаю?
Если так, то это никуда не годится. Обязательно надо, чтоб всё работало и без javascript'а. Я сейчас кой чего перепишу, обещаешь посмотреть (и принять)) мой пулреквест? (-:
А работоспособность minishop'а на фронтенде при выключенном javascript'е стремится к нулю, как я понимаю?
Если так, то это никуда не годится. Обязательно надо, чтоб всё работало и без javascript'а. Я сейчас кой чего перепишу, обещаешь посмотреть (и принять)) мой пулреквест? (-:
Комментарии: 39
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Зачем в 2013 году работоспособность без javascript?
Просто на публичных проектах javascript должен дополнять работоспособность, а не заменять её. Без вариантов.
Это в каком-нибудь закрытом проекте, интранете или веб-сервисе допускается отсутствие работоспособности при выключенных скриптах.
Да о чём ж вообще речь — это ж интернет-магазин!
Для кого-то 5% отказов — это пара тысяч упущенной прибыли, а для кого-то пара сотен тысяч (станки, к примеру, продают).
Владельцы интернет-магазинов борятся за каждый процент конверсии, а мы по умолчанию отсекаем некий процент аудитории. И в разных тематиках этот процент будет совершенно разным.
Есть армия пользователи мобильников с оперой мини (я ей пользуюсь к примеру, за отсутствием альтернатив), она javascript не поддерживает, есть армия пользователей на китайских планшетах, у которых в самописных предустановленных браузерах яваскрипт как бы есть, но в то же время и нет. Ну и плюс параноики.
Тут вообще, по-моему, вопроса такого не должно стоять. Тем более, это будет пулреквест, останется только посмотреть да потестировать.
Сейчас нет десктопных браузеров с отключенным javascript. Из последнего FireFox такой переключатель вообще убрали. Если у кого-то отключен javascript — то это разработчик, которыйсам его отключил и значет, что делает. У обычных юзеров javascript всегда включен.
Ну а из opera mini (ей кто-то пользуется?) вряд ли делают покупки и расплачивается visa.
Присылай request, посмотрю — но это пустая трата времени, на мой скромный взгляд.
Дальше что, отказываемся от js в личном кабинете, выкидываем ExtJS и рисуем таблицы ручками, с перезагрузкрй при каждом пуке и просмотром заказа во всплывающем окошке? Привет, 2000-ые.
Я больше по фронтенду работаю, верстаю (css3, responsive, mobile first, все дела..), кодю на js, примерно представляю порядок цифр. Мне это в каждом проекте приходится учитывать.
10 миллионов пользователей и сама опера на 4м месте с тобой не согласны :-) Да, пользуются и достаточно много) Но дело не только в ней. Если бы страница оплаты на сайте визы не работала бы без javascript — для них это были бы колоссальные убытки. Само собой, оплатить с мобильника через их сайт вполне реально.
Бывает так, что китайские планшеты (Одроид на 3м месте, Симба на 4м) тупо не могут обработать всю тонну javascript кода, которым напичканы все современные сайты под завязку. Да что там — одна ошибка в любом банальном jquery плагине — вуаля, не рабочий интернет-магазин, только каталог.
Я приверженец того, чтобы всё везде работало. Просто работало. У всех. Каждый пользователь ценен (особенно в ИМ). И если мои сайты (не веб-сервисы, не закрытые проекты, а просто сайты) не выполняют свою основную функцию без скриптов — значит я это переделываю) Такой уж вот перфекционизм.
Лично я вообще не представляю, как может быть по другому) В ИМ это тем более того стоит.
Ну вообще, на фронтенде экст я опасаюсь использовать. Этого монстра сразу как-то невзлюбил. Но без скриптов и неработающего кабинета сделать покупку можно, а вот без скриптов и неработающего магазина — нельзя :-)
Сейчас тенденция такая — с эрой мобильников и планшетов под них надо делать сайт как в 2000, а затем наращивать функционала и рюшечек для десктопов. И чтобы всё у всех работало. Это и называется «mobile first». Сперва 2000, потом современность. Приходится выкручиваться, куда ж деваться)
Всё нормально будет, я надеюсь)
Просто интересно, где такое бывает?
Интернет-магазин — не информационный ресурс (в основном), важен каждый посетитель и важны другие метрики — отказы и конверт.
Математика простая:
Если ПБJS (как, например, вот здесь) не может выполнить целевое действие на сайте — он уходит. Отказы у ПБJS стремятся к 100%. В нашем случае — ровно 100%, потому что ПБJS купить ничего не сможет.
У каждого ИМ показатели индивидуальны.
Но предположим, что у некоего ИМ среднесуточная посещаемость — 1000 человек, ПБJS — 3% от общей аудитории, конверт — 20%, средний чек — 1500 рублей.
Получается (1000/100*3) /100*20 * 1500 = 9000 рублей недополученной прибыли в месяц или 108 000 рублей в год! И это тупо на пользователях с отключенным javascript'ом, которых мы по умолчанию отсекаем! Стоит ли говорить, что это как-то не правильно?
Мы, как разработчики, повлиять на увеличение конверсии и посещаемости не можем. Но вот обеспечить полнофункциональность магазина и не снижать конверсию, когда такая возможность имеется — мы обязаны.
Как-то так.
Ну ладно, сделаешь ты магазин для слепоглухонемых — у тебя им будет хорошо. И что, все остальные выкинут айпадики и начнут делать сайты так же?
Ушел этот поезд, очень дано. Это тоже самое, что в мерседесе возить канистру с бензином — а вдруг заправки закончатся? Ну или поддерживать IE6.
Я уже сказал — присылай коммит, я
поржупосмотрю. MS2 работает js-only, все на это рассчитано.Вот не ожидал таких слов услышать) Это не бред, а чистая математика и живые деньги =)
А если без шуток, выглядит любопытно, посмотрю. Только это все минимум для версии 2.1 — очень много изменений.
На первом MS мы выяснили уже, что если обращаться к сниппету на странице, то скорость примерно в 2 раз ниже. А тут как?
Но, технически, будет даже быстрее (пусть и не заметно для глаза) или разницы просто не будет. Ведь запросы обрабатываются не в сниппете, а в плагине на onHandleRequest.
Когда запросы шли через action.php, запускался index.php, в котором инициализируется modX, контекст и запускается $modx->handleRequest(). Код miniShop'а начинал свою работу после полной отработки modX::handleRequest(),
А когда всё работает через плагин, то код miniShop'а вступает в действие уже вот здесь, когда modX::handleRequest() запускает событие onHandleRequest, т.е. miniShop2 начинает обработку запроса раньше, чем это было через action.php :-)
Это позволяет рассылать письма покупателям на разных языках и вообще, делать разные магазины на одном движке.
В общем, тестировать и тестировать твои изменения.
А в скриптах всегда подставляется контекст.
Всё, что было в action.php — всё перенесено в плагин (ну за исключением подключения index.php). С такими вещами я больше всего боялся накосячить и поэтому отнесся к ним с бОльшим вниманием =)
Изменение очень серьезные, быстро обработать не обещаю. Но добавлять буду, ибо прикольно.
Спасибо за коммит!
Кстати должен сказать, что фронт демосайта минишопа с фильтрами и тп работает и фильтрует.
Отсюда хочу сделать вывод, что ситуации бывают разные, политики безопасности тоже. И браузеры. А у нас например ребята молодые, и с работы заказывают в интернет-магазинах много чего, чтобы привозили в рабочее время (самое удобное). И вот тут может быть самая что ни на есть потеря аудитории, причем платежеспособной и тп.
Но конкретно в данном случае, можно сохранить и статус-кво, т.к. «из коробки» в минишопе все работает, а уж стили и дальнейшая кастомизация должна проводиться аккуратно.
То тут про паралитиков с opera mini говорили, теперь про госслужащих с IE8 через прокси. Может, о нормальных покупателях подумаем — как им сделать удобно? Ну, верстка там, юзабилити.
Ради 0.5%, или даже 5% обездоленных, я не хочу жертвовать функционалом всех остальных.
Эту бы энергию, да в мирное русло.
Сейчас у большинства включен javascript, но что будет потом не кто не знает!
Вполне возможна и ситуация когда большинство отключит javascript (будет какая нибудь паника в инете и так далее)
Конечно потом думаю все равно включат, но осадочек останется.
И когда интернет магазин продолжает работать с отключенным javascript лучше чем не работает.
убил, не могу)
поиск по параметрам не работает
И яндексу дальше уже абсолютно пофигу — будет ли работать сайт рекламодателя или нет. Он свою работу выполнил, коммиссию за клики получил. А вот если целевой ИМ у юзера не заработал — то это проблема магазина с его недополученной (упущенной) прибылью.
А станки как говорилось всеравно никто по интернету заказывать небудит товар специтфичный максимум что каталог нужен и все