С тех пор как несколько лет назад я увидел первую версию сайта tnd.ru (не путать с текущей) мечтал
Но, к сожалению, никак не предоставлялось случая — у наших заказчиков всегда обнаруживались более приоритетные задачи.
И вот наконец нам предоставилась такая возможность!
Представляем вашему вниманию www.remny.ru версия 1.2 !
По сайту проделана большая работа:
1. Блоки спецпредложений стали скроллирующимеся (включая вертикальный в корзине) c AJAX подгрузкой из БД + появилась отдельная страница со списком всех спецпредложений.
2. Появился функционал сравнения товаров (через AJAX конечно же).
3. Понятие профиль покупателя было упразднено, все данные покупателя теперь выводятся еще при регистрации и правятся соответственно в форме редактирования пользователя. (По прежнему уверен в том, что "Профиль покупателя" это лишняя, путающая покупателей сущность для большинства и-м на Битрикс..)
4. При покупке ремня появилась возможность выбрать размер из имеющихся (характеристика товара) причем после покупки, кнопка заменяется на "товар уже в корзине", но только для выбранного размера! Если выбрать другой размер — кнопка опять появится.
5. На детальной товара появились вкладки, в которых можно просматривать: другие товары из того же раздела, товары просмотренные ранее, сравниваемые товары и спецпредложения — все скроллируется AJAX.
6. В фильтре появилось еще два параметра: длина ремня (ползунком) и выбор материала. Фильтр полностью работает на AJAX (обновление страницы срабатывает сразу — никаких кнопок "Применить" и лишних кликов пользователя), интервал цен у ползунков автоматически сужается при смене разделов. (Делали пересчет и других значений свойств фильтра, но пока отказались из-за высокой нагрузки данной операции оказываемой на сервер.)
7. Улучшено USABILITY постранички, так же, теперь она работает в режиме AJAX. Стало возможным задать необходимое количество отображаемых товаров в списке (AJAX).
8. В панели сортировки (AJAX) теперь отмечается текущее поле сортировки и направление.
9. Появилась возможность задать вопрос по интересующему товару и появились опросы.
10. С целью увеличения скорости работы сайта была произведена попытка включения Инфоблоков+ и создания дополнительных индексов БД, однако, вопреки нашим ожиданиям прироста скорости работы это не принесло. Однако, хорошие результаты прироста производительности дала тонкая настройка <s>винта качества и винта количества[/s] параметра mySQL optimizer_search_depth, а так же включение опции автоматический оптимизации таблиц БД (а в основном это таблицы модуля Веб-аналитики) при их очистке агентом.
11. Внесено множество мелких правок и улучшений дизайна интерфейсов (включая улучшения административного интерфейса сайта).
С удивлением обнаружили, что если собрать вместе все вещи, которые ранее мы делали 1000 раз, но по отдельности, вроде:
ajax-добавление в корзину
включение автокэширования
покупка товара с характеристикой
ajax-фильтр
несколько типов цен для разных групп пользователей
режим ЧПУ
итд итп
то суммарное время разработки НЕ равняется простой арифметической сумме времени разработки отведенной на каждую задачу по отдельности.. :-\
Кажется чудеса, но прирост сложности происходит по какой-то прогрессии и дает кумулятивный эффект! Ведь все связанно между собой, все взаимодействует и все влияет друг на друга..
Отлаживать работу становится очень сложно. Нужен тестировщик и сценарии. Разработка такого интерфейса начинает напоминать разработку полноценного ПО.
Общее суммарное время работ по программной части сайта за все время по смете: 256 часов.
Реально мы потратили на 50% больше..
В общем, баги отлавливаем и правим до сих пор, но все равно работой очень довольны.
Кстати, обороты интернет-магазина в сравнении с аналогичным периодом год назад выросли на 300%,
думаю свою роль в этом сыграли и наши старания










Ajax вы делали весь с помощью jquery ? Использовали api битрикса для работы с ajax ?
Мы уже приняли за правило работать с jQuery, по причинам ее популярности, удобства, а так же огромного количества плагинов для реализации полезного функционала.
Важно что ссылка там в принципе есть и поисковики ее видят. Позже хотим доработать для HTML5 в соответствии с .