Тема: Замечания по работе системы
Я буду очень ироничен, ибо за**ло и накипело.
1. Начнем с "мелочей" Дефолтный шаблон - 2 подключения jQuery. Ненуачо ? Чтобы наверняка. Еще CDN Google и Яндекса подключите. Каналы то у всех сейчас широкие. Писал я об этом в скайп с месяц назад, а воз и ныне там, увы. Наводит на размышления.
2. Снова в тему широких каналов. Дополнительные картинки товара. Как вы думаете предусмотрены их миниатюры ? Правильно, нет. Пусть браузер трудится и каналы.
3. Выделение активного пункта у подкатегорий в меню МАГАЗИНА. А вот хрен вам. В нашем дизайне это не нужно, поэтому это не нужно. Кстати предыдущий и некоторые последующие пункты отлично вписываются в эту логику.
4. Немножко пройдусь по верстке.
а) первая строчка style.css сразу дала мне понять, что "много мне открытий чудных готовит этот файл"? ну и весь фронтенд. Я не ошибся в ожиданиях.
б) вертикальная отбивка с помощью <span class="helper"></span>, который по всему сайту встречается раз, как минимум, 200
в) <div --="" frame="" menu="" tree.="" category="" render="" start.="" <!--=""> - вот такую вот конструкцию можно наблюдать в отладчике. без комментариев.
г) Возможно это дефолтное поведение ФэнсиБокса, в чем я, правда, очень сомневаюсь, ибо западные фронтендеры очень щепетильно относятся к таким вещам, но факт таков - при клике на "Обратный звонок" и затем закрытии этого попапа, при скролле на этой же странице - в фоне js вычисляет координаты этого попапа. Фаерфокс просто с ума сходит, Посмотрите в Фаербаге. Презанимательнейшая картина, доложу я вам. При клике видимо не судьба координаты вычислить.
д) Написать функцию на js в 150 строк (приблизительно) и еще 50-60 на обработку событий для 3 (!) всплывающих окон - вот он true-way. В вашей компании, случайно, не практика зарплаты по количеству кода практикуется ?)
е) функция StarRating прописана аж в трех файлах (возможно еще где то, мне надоело на неё натыкаться)
ж) css Bootstrap Responsive прямо в head. Правильно, кэширование для слабаков.
з) На странице товара в хтмль мы можем видеть вообще удивительную вещь. Давайте представим, что например у товара больше 20-ти вариантов (это реально). Так вот - мы увидим 20 span'ов с data-данными, 20 (!) кнопок купить ну и, конечно же, 20 кнопок Сообщить о появлениии. Как хорошо, что нет еще какой-нибудь подобной кнопки.
и) я скромно промолчу про минификацию и оптимизацию кода фронтенда, ибо чоуштам на спичках то экономить, когда главная страница дефолтного шаблона весит больше мегабайта. Кстати, вы где в СНГ такой Wi-Fi быстрый встречали, не считая домашнего ?)
Переходим к основному блюду
5) Просмотренные товары. Заходим на страницу одного товара (A), затем на страницу другого товара (Б), на странице Б мы в Просм. товарах с облегчением наблюдаем (А), идем обратно в (А) и наблюдаем в просмотренных товарах - что ?) Правильно, (А), но без (Б). Вспоминается детская считалочка-загадка.
6) В Похожих товарах вообще кромешный ад творится. При наличии в тестовой версии магазина 2-ух товаров - в Похожих их как минимум 5 (ибо карусель активирована). Считать сколько их там, уж извините, побоялся.
7) Немного магии. Мы будем свидетелями загадочного исчезновения. Идем сюда ( http://demoshop.imagecms.net/shop/product/110 ), насколько, я понимаю, это единственный товар с вариантами в дефолтном шаблоне (лирическое отступление). Выбираем серый цвет в варианте (ибо разрабы забыли (КМБУ !) прописать data-vname у первого варианта товара), жмем кнопку Купить, затем (вот он волшебный триггер) увеличиваем количество товара (мы еще видим название варианта), переходим к оформлению заказа и наблюдаем волшебное исчезновение этого параметра. Все, больше вы его нигде не увидите, если только не очистите корзину.
8) Виш-листы. Смоделируем ситуацию. Блондинка Люся лазит по магазину нижнего белья (естественно, не регистрируясь), находит красивые трусики. Красные (первый вариант), белые и черные. Красных у нее уже 5, а вот белых всего 2. Взгляд её падает на кнопочку В список желаний. После 5 минутных размышлений, она начинает понимать, что с помощью этой волшебной кнопочки она, возможно, сможет довольно тактично переложить финансовое бремя этой покупки на своего любовника Василия Петровича. Вся в предвкушении, уже мысленно примеряя их, она кликает по этой кнопке. Процесс регистрации полет её мечтаний остановить никак не может, как впрочем и то, что приходиться после регистрации повторно кликать по кнопке. Но, что она видит в этом вожделенном списке?) Красные, а не белые трусики. Проходит 5 мин яростных кликаний и Люся начинает понимать, что белые она ну никак не может добавить. Нужно морально подготовить и направить Василия Петровича в правильное (светлое) русло. Чем она последующие 20-25 минут и занимается. Подробности я опущу. Наконец она возвращаетя к компьютеру (мы ведь помним, что она на той же странице товара?) и победно кликает по кнопке. Дальше следует непереводимая игра слов, медленное седение и кошмар Люсиных знакомых гиков. Ибо Фаерфокс в подобной ситуации отдает белую страницу, Хром - 500 ошибку сервера, а страницы магазина при заходе с тех же браузеров корежит так, что не передать словами. Откуда же бедной Люсе знать, что лечится эта напасть чисткой кукис.
9) В аякс-поиске берется цена последнего варианта, а не первого и не скидочная цена.
10) Даже, если бы Люся смогла таки завершить свою эпопею, и, например, на эти приснопамятные трусики была бы скидка - то она все равно об этом не узнала бы. А вот Василий Петрович возможно сэкономил бы немножко. А все потому, что это условие $любая переменная товара->hasDiscounts() показывается только для 3-ех категорий пользователей. И да - зарегистрированные пользователи в эти категории не входят. Правильно, не надо тут чужих.
11) Не прицепляются виджеты к страницам категорий товара.
12) Ну и еще немного мелочей:
а) не вычитается цена подарочного сертификата в просмотре заказа в профиле юзера
б) Числовое значение подарочного сертификата вставляется в ХТМЛь страницы уже с {CS}
в)
13) Ну и напоследок вспомним о теневых работниках - контент-менеджерах, админах или просто хозяевах инет-магазинов. Вот, например, захотели вы создать скидку на всю категорию товаров ну или на какие то отдельные товары. Осилили, создали. Где смотреть в дефолтном шаблоне?) На главной странице? естесственно. И тут нас поджидают два "больших и волосатых "но"". 1ое - то что в Action_products сортировка по умолчанию идет по популярности, а не по дате. С этим мы кое как, предположим? справились. Но тут 2-ое - без проставления ярлыка "Акции" вы никогда не увидите ТОВАРЫ СО СКИДКОЙ В АКЦИОННЫХ ТОВАРАХ. Гениально же ?)))
На сим, позвольте откланяться. Продолжение, наверняка, следует )
P.S. Имейджи, наймите уже себе тестировщика хорошего.