URL: kfk.ru 
Тип проекта: Интернет-магазин
CMS: 1С-Битрикс: Управление сайтом - Бизнес 

Оптовый магазин электроники kfk.ru предлагает покупателям товары из 80+ различных товарных категорий. Товары каждой категории обладают набором уникальных свойств. Для эффективного подбора товаров была разработана нестандартная внутренняя архитектура информационных блоков, как следствие, для публичной части сайта разработано порядка 20 нестандартных компонентов Битрикс. Интернет-магазин полностью интегрирован с системой 1С Предприятие.  

На проекте был реализован интересный кейс фильтра:

 Наверное, каждому разработчику и владельцу интернет-магазинов, приходилось не раз слышать от SEOшника: «нужно сделать ЧПУ для фильтра, как на розетке, как на розетке, как на розетке...». Не знаю уж, почему именно пресловутая розетка так нравится SEO-специалистам, но спрос породил предложение. Прежде, чем рассказать о нашем опыте реализации ЧПУ для фильтра и о нашем новом модуле под маркетплейс (который сейчас на стадии бета-тестирования), я хотела бы немного рассказать о самой сути задачи. 

В чем особенность фильтра «какнарозетке»? 
http://rozetka.com.ua/memory-cards/a-...0044/v242/ 
  1. Имитация статичности динамических страниц, сформированных фильтром. У страниц каталога, к которым применен фильтр — красивые человекопонятные URL-адреса.;
  2. Перелинковка за счет использования ссылок в качестве лейблов чекбоксов фильтра;
  3. Возможность указания отдельного заголовка, мета-описания и ключевых слов для каждой фильтрованной страницы каталога. 
Поисковым системам очень нравится такая организация каталога. В индекс попадает бешеное количество (число страниц потенциально равно количеству сочетаний значений свойств раздела без перестановок) перелинкованных друг с другом страниц с уникальным описанием и уникальными метатегами и, как следствие, высокорелевантных низкочастотным поисковым запросам. 

Проанализировав работу фильтра на сайте http://rozetka.com.ua/ мы поняли, что, используя мощь движка 1С-Битрикс, мы можем сделать и точно так, и даже красивее (а именно: на розетке количество свойств раздела, для фильтрации по которым организуется ЧПУ — ограниченно небольшим числом, и ЧПУ — не мнемонично — человекопонятным его можно назвать лишь с натяжкой. Мы же нашли решение для неограниченного числа свойств, а так же предусмотрели вариант автоматической генерации метатегов на тот случай, когда контент-менеджер не успевает их придумывать). 

Однако в силу различий в архитектуре интернет-магазинов, на которых нам приходилось организовывать подобный фильтр, каждый раз нам приходилось изобретать этот велосипед практически с нуля. Порой мне казалось, что универсальное и одновременно изящное решение данной задачи — невозможно. 

К примеру, в интернет-магазине электроники kfk.ru нам пришлось учитывать наличие в системе предсозданных SEO-страниц, на которые пользователь должен был попадать, выбирая определенную комбинацию фильтра. 

http://kfk.ru/podborki/sat-50m-koaksi...nyj-kabel/ 
Сняв же галочку фильтра на такой посадочной странице или выбрав другой фильтр, пользователь должен был попадать обратно — на динамическую страницу каталога. 

http://kfk.ru/catalog/kabel-koaksialn...0m-rg_59u/ 

В интернет-магазинах http://uptosport.ru/ и http://uptodream.ru/ нам пришлось дать контент-менеджерам инструмент для присвоения свойствам и их значениям символьных кодов (они не велись ранее), а так же контролировать их уникальность. 

В итоге получились вот такие красивые ЧПУ-ссылки на фильтрованные разделы: 

http://uptosport.ru/catalog/dlya_zhen...ue/size=L/ 

http://uptodream.ru/catalog/dlya_zhen...or=purple/ 

В некоторых интернет-магазинах задача осложнялась так же тем, что контент-менеджеры работали только на стороне 1С Предприятия, и хотели вбивать символьные коды свойств и значений свойств только там. 

Мы придумали, как расширить выгрузку из 1С УТ для того, чтобы можно было передавать символьные коды свойств и их значений, не нарушая формата CML2 и не ломая налаженный на проектах обмен с 1С. Дополнили выгрузку XML следующим образом: 

<Свойство> 
<Ид>83875106-f414-11e0-83db-0023ae2ed3a2</Ид> 
<Наименование>Цвет</Наименование> 
<ТипЗначений>Справочник</ТипЗначений> 
<СимвольныйКод>color</СимвольныйКод> 
<ВариантыЗначений> 
<Справочник> 
<ИдЗначения>83875108-f414-11e0-83db-0023ae2ed3a2</ИдЗначения> 
<Значение>Красный</Значение> 
<СимвольныйКод>red</СимвольныйКод> 
</Справочник> 
</ВариантыЗначений> 
</Свойство> 

И, естественно, мы добавили поддержку выгрузки символьного кода свойств и значений свойств в свой модуль интеграцииhttp://marketplace.1c-bitrix.ru/solut...tegraciya/ (выйдет на днях в составе фундаментального обновления 3.0.0). 

После этого мы подумали (и измерили), что если хранить символьные коды значений всех свойств в одном highload инфоблоке, это позволяет организовать фильтр с ЧПУ чрезвычайно эффективно, и мы добавили в свой модуль интеграции опцию, позволяющую создавать и заполнять для нашего ЧПУ фильтра highload инфоблок прямо в процессе импорта из 1С Предприятия. 

В своем же модуле фильтра «какнарозетке» (мы еще думаем над его официальным названием) мы добавили поддержку своего модуля интеграции. То есть, если в системе будут установлены оба наших модуля — они будут работать совместно, и производительность ЧПУ-фильтра увеличится в разы. Но если в системе будет установлен только наш модуль ЧПУ, он будет выбирать символьные коды свойств из вспомогательного инфоблока или highload-инфоблока-справочника значений каждого конкретного свойства.

Возврат к списку