Mini-ats102.ru

ООО “Мультилайн”
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Оптимизация скорости работы умного фильтра 1С-Битрикс для интернет-магазина с большим каталогом товаров

Оптимизация скорости работы умного фильтра 1С-Битрикс для интернет-магазина с большим каталогом товаров

Данная оптимизация актуальна только для больших каталогов, в которых есть хотя бы несколько десятков тысяч товаров.

При этом свойства, отображаемые в фильтре, являются привязками к разделам или элементам инфоблока.

Если в вашем каталоге пара тысяч товар, то смысла в этой оптимизации не будет.

Мы проводили тесты на каталоге, в котором 34220 товара и 108051 торговых предложений.
19 свойств в фильтре — это привязки к инфоблокам.

1) Умный фильтр в методе getIBlockItems в цикле получает информацию о каждом свойстве.

Можно за один запрос получить информацию о всех свойствах в ассоциативный массив, где ключ — ID свойства.
Тут же в массив свойства добавим ключ «LINKED_IBLOCK_ID» — это ID привязанного инфоблока, понадобится нам для дальнейшей оптимизации

2) Классу CBitrixCatalogSmartFilter добавляем свойство protected $props_val типа array(), в нём будем запоминать все значения разделов или элементов привязанных инфоблоков

3) Оптимизируем метод fillItemValues.

В этом методе каждый элемент или раздел из привязанного инфоблока запрашивается отдельным запросом.

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

Суть оптимизации заключается в том, что можно сократить число запросов до количества привязанных инфоблоков.

Для каждого привязанного инфоблока мы один раз получим и запомним в $props_val все активные элементы или разделы инфоблока, чтобы потом можно было из кэша доставать нужный нам элемент или раздел, при этом не генерируя отдельный запрос.

Было — bitrix:catalog.smart.filter: 1.7503 с; Запросов: 5975 (0.7645 с)
Стало — ameton:catalog.smart.filter_optimized: 0.9055 с; Запросов: 467 (0.6222 с)

Мы сократили количество sql-запросов в 12.8 раз! Время генерации фильтра уменьшилось в 2 раза!

Вывод формы в публичном разделе сайта

Если вы хотите разместить форму на отдельной странице, создайте страницу для формы.

А если хотите разместить в шаблоне, например в шапке, тогда создайте временную страницу, чтобы настраивать форму там. После скопируете вызов компонента формы с временной страницы. Я создам файл test.php.

Открываем редактирование страницы в визуальном редакторе, в компонентах ищем form.result.new, перетягиваем в окно правки.

Если нет поиска компонентов, то нажмите на кнопку у правой границы редактора.

Через несколько секунд появится окно настройки компонента.

Там нам надо заполнить:

После сохранения компонента, на странице появится форма. Она не очень красивая, поэтому установим свой шаблон.

Включим режим правки, наведем курсор на форму, там скопируем шаблон, как показано на картинке.

Укажем новое название шаблона, шаблон сайта — текущий.

В шаблоне компонента сразу удалим все лишние файлы. Если их не удалить, в будущем они будут создавать путаницу при доработке шаблона, потому что будем иметь полно файлов не понятного назначения. А еще сайт будет тяжелый, так как пользователь будет получать много не нужных скриптов и стилей.

Оставим только файл template.php

Приступим к редактированию шаблона.

В template.php доступны следующие переменные:

  • $arResult[«isFormErrors»] — равен «Y«, если есть ошибки с формой
  • $arResult[«isFormNote»] — равен «Y«, если форма успешно отправлена. С условием по этой переменной можно выводить сообщение об успешной отправке уже без формы.
  • $arResult[«FORM_HEADER»] — открытие формы и системные теги
  • $arResult[«FORM_FOOTER»] — закрытие формы и системные теги
  • $arResult[«QUESTIONS»] — массив вопросов формы
  • $arResult[«isUseCaptcha»] — равно true, если включен показ капчи
  • $arResult[«CAPTCHA_IMAGE»] — тег img с картинкой капчи
  • $arResult[«CAPTCHA_FIELD»] — поле для ввода капчи
  • $arResult[«FORM_ERRORS_TEXT»] — текст ошибок
  • $arResult[«FORM_NOTE»] — сообщение об успешной отправке
  • $arResult[«FORM_TITLE»] — заголовок формы
  • $arResult[«FORM_DESCRIPTION»] — описание формы
  • $arResult[«arForm»][«BUTTON»] — текст кнопки Отправить

Для вывода полей надо брать вопросы из $arResult[«QUESTIONS»] по символьному коду.

  • CAPTION — имя поля
  • IS_HTML_CAPTION — имя поля в формате HTML, Y/N.
  • REQUIRED — обязательно к заполнению, Y/N.
  • IS_INPUT_CAPTION_IMAGE — есть ли изображение вопроса
  • HTML_CODE — HTML код поля
  • STRUCTURE — детальное описание поля
  • IMAGE — описание изображения вопроса, если IS_INPUT_CAPTION_IMAGE равен Y.
Читайте так же:
База данных компьютерных вирусов

Например, чтобы вывести инпут поля с символьным кодом NAME надо сделать в шаблоне так:

На основе переменных выше соберем шаблон

Логика его такая:

Вначале проверяем, подключает ли файл Битрикс или его открыл пользователь введя в браузере адрес шаблона. Если не битрикс — блокируем генерацию шаблона.

Если форма успешно отправлена — выводить сообщение, иначе — выводим форму.

<?=$arResult[«FORM_HEADER»]?> — выводит открытие формы со служебными скрытыми полями.

Поле web_form_submit в значении Y — триггер для Битрикс, говорящее о том, что форма отправлена и надо бы проверить, что там ввел пользователь.

Если есть ошибки — выводим их в диве с классом errors.

Далее выводим три поля, у каждого: Имя, если обязательное — галочка, HTML код инпута для ввода.

Перед закрытием формы — кнопка отправить с тексом, который указан в настройках формы.

На этом можно закончить, форма уже будет работать.

Ajax отправка

Еще не забыли про ajax? Сейчас покажу вариант, который работает даже без JQuery.

Создайте в папке шаблона компонента файл script.js с контентом:

Этот скрипт обрабатывает отправку формы, которая передается первым параметром, отправляя все данные из нее на ссылку, переданную вторым параметром. popupSuccess() — это какой-то ваш вызов сообщения об успешной отправке формы.

В шаблон (наш template.php) после <?=$arResult[«FORM_HEADER»]?> добавьте строку <div ></div>. В конец файла добавьте следующее:

Выше мы привязали через функцию ajaxForm() ajax к форме. В $templateFolder хранится ссылка на папку текущего шаблона, в ней мы создадим файл ajax.php. Путь файла, например, может получиться такой: /bitrix/templates/books/components/bitrix/form.result.new/request_form/ajax.php.

Последний штрих — создать файл обработчик ajax запросов.

Создайте в папке шаблона компонента файл ajax.php с контентом:

В этом файле мы принимаем запрос от пользователя, если есть ошибки, выводим их в JSON, если всё успешно, так же через JSON говорим об успешности.

Аналогично компоненту веб формы, запускаем обработчики событий.

В этом варианте нет минусов, как в варианте с битриксовым аякс, потому что битрикс подменяет каждый раз HTML в нашей форме, а в текущем варианте DOM страницы не трогается.

Ajax. Битриксовый вариант.

Чтобы форма отправлялась без перезагрузки страницы, надо добавить в параметры вызова компонента следующее:

«AJAX_MODE» => «Y»,
«AJAX_OPTION_SHADOW» => «N»,
«AJAX_OPTION_JUMP» => «N»,
«AJAX_OPTION_STYLE» => «Y»,
«AJAX_OPTION_HISTORY» => «N»,

Кстати, с помощью этих параметров добавить AJAX можно в любой компонент. Эти параметры — не особенность вебформ, реализована работа с ajax в базовом классе компонентов.

Теперь Битрикс сам добавит нужные скрипты.

Алгоритм работы Ajax формы:

  1. Весь шаблон формы оборачивается в тег с уникальным ID.
  2. После этого тега добавляется JS, который устанавливает событие на отправку формы.
  3. Пользователь отправляет форму
  4. На сервер запрос через весь шаблон доходит до вызова компонента
  5. Битрикс обрабатывает введенные данные
  6. Получает вывод шаблона формы и заменяет на странице в теге, добавленном в пункте 1, всё содержимое.
  7. Результат: страница не перезагружалась, пользователь видит вместо формы сообщение об успешной отправке или ту же форму с ошибками.

Из этой логики мы получаем некоторые нюансы. Поля формы, обработанные на джаваскрипте при загрузке страницы, снова будут не обработанные, так как они заменились, а события загрузки страницы заново не было.

Особенность 1

Если в форме в поле телефона на JS ставится маска, например $(‘.my_phone_input’).mask(‘9 (999) 999 9999’), то маска пропадет после замены битриксом формы. Поэтому маску придется накладывать в файле template.php, чтобы она накладывалась каждый раз заново.

Особенность 2

Если мы форму используем в попапе, а при открытии окна верстка копируется в отдельный блок (так работает fancybox) ajax режим работать не будет.

Читайте так же:
Восстановление данных с флешки raw

Представим ситуацию: верстку всего попапа мы убрали в шаблон формы. Имеем структуру на странице, как показано ниже.

#1 — блок компонента формы. Эту верстку мы генерируем в шаблоне на сервере.

#2 — блок, который появляется при открытии формы на фронте. В него копируется наша верстка.

Проблема в том, что ajax будет заменять контент скрытого блока, внутри блока #1, а в блоке #2, который видит пользовать, изменений не будет.

Как исправить это? Вынести разметку попапа из шаблона компонента формы, то есть в нашем случае, вызов компонента сделать внутри <div >. Тогда <div > будет копироваться вместе с версткой формы и у пользователя будет работать ajax.

Форма имеет динамические значения. Все значения полей select берутся из базы данных. Естественно адаптируйте под свои задачи. Вставляйте в нужное место своего шаблона.

Теперь давайте напишем функцию, которая будет получать отфильтрованные результаты. Напомню, что наш фильтр имеет два поля «Специализация» и «Стаж». Наша функция будет получать эти данные посредствам POST-запроса. Размещаем её в functions.php

Теперь, когда у нас есть каркас формы фильтрации, функция фильтрации, осталось только написать Javascript-код для отправки AJAX-запроса при выборе значений фильтра и отобразить результаты.

Работаем над файлом описания компонента

Для того, чтобы наша навигация появилась в редакторе нам нужно заполнить файл .description.php. Тут есть один момент, который я заметил: при сбросе кэша в редакторе результата мы не увидим, его нужно сбрасывать в административной части. Хотя может это только у меня так.

Тут у нас стандартная структура описания — все текста вынесены в соответствующие lang-файлы:

В результате, когда вы зайдёте в редактор страницы, будет видна такая картина:

dobavlenie-komponenta-v-redaktore

Значит всё правильно и можно продолжать работать.

  • Теперь нужно подготовить функцию с AJAX-запросом, с помощью которой будет отправляться ID товара в обработчик, в котором будет происходить его добавление в избранное. Функция проверяет, наличие товара в массиве, если он уже добавлен, то мы его удаляем. Если операция прошла успешно, пересчитываем количество товаров в избранном и выводим количество.

Код обработчика ajax.php , который добавляетудаляет товары избранного:

Мы сформировали обработчик, который добавляет товары в избранное. После этого попробуем добавить парочку товаров в избранное. Они запишутся в Cookies или в пользовательское поле UF_FAVORITES (в зависимости от типа пользователя). Если мы выведем массив ‘[H1toH2]

Выделение избранных товаров в каталоге (закрасить иконку)

Финальный шаг. Товары выводятся, добавляются в избранное и удаляются. Осталось показать пользователю, что товар успешно добавился в избранное, и при перемещению по каталогу, он видел, какие товары добавлены в наш ‘wishlist’. Я сделал закрашивание иконки (сердца), давая понять, что товар избранный.
Для этого обратимся к файлу component_epilog.php в нашем компоненте (в данном случае bitrix:catalog.section), в котором будем добавлять соответствующий класс active к иконке избранного товара, тем самым закрашивая её.

Нужна установка избранного или настройка таргетной рассылки на основании добавленных товаров? Вы всегда сможете обратиться к нам за помощью! Позвоните нам или закажите услугу в Веб-мастерской.

COOKIE‘, то должны обнаружить там добавленные ID товара.

Чтобы проверить ID товаров в поле UF_FAVORITES, используем код:

[/H1toH2]

Умный фильтр с ЧПУ для SEO — Делаем как надо

Умный фильтр с ЧПУ для SEO — Делаем как надо

Есть проекты — интернет-магазины. Это сложные проекты и для продвижения, и для веб-разработки.

В них сотни и тысячи товаров. Десятки и сотни категорий.

Есть особый тип страниц — страницы фильтра. Их на порядок больше. Они собирают трафик по огромному количеству запросов и важны для SEO.

Пример: на сайте, где продаются стройматериалы, в категории «облицовочный кирпич» ставим флажок «желтый». Видим новую страницу, идеально отвечающую на запрос «желтый облицовочный кирпич». Таким образом можно обеспечить посадочными страницами семантическое ядро любого размера.

Читайте так же:
Жди меня база данных по фамилии

Много посадочных также хорошо и для контекстной рекламы — любой запрос найдет свою страницу.

2.png

Вывод: страницы выдачи фильтров интернет-магазина исключительно важны для SEO.

Статья о том, как их делать, оформлять, встраивать в навигацию и продвигать.

Что такое умный фильтр

Фильтр — инструмент выбора товаров в интернет-магазине. Например, в строительном интернет-магазине, чтобы из множества однотипных кирпичей выбрать желаемый цвет, пользователь ставит галочку, страница обновляется, появляются «Абрикосовые кирпичи». Также выбирают Производителя, Размер, и прочие характеристики. Чем больше параметров выберет пользователь, тем уже будет выборка, тем точнее результат.

Фильтры можно любить или нет, но не обращать на них внимание нельзя. Для магазина с 1000 товаров и 30 категориями страниц-фильтров будут десятки тысяч. Про них знают поисковики, они занимают большой процент всех проиндексированных страниц. Это ваш актив, работайте с ним.

Умный фильтр не только показывает товары, но обладает дополнительными удобствами:

  • Знает, какие комбинации характеристик не дают результата, и запрещает их выбор. Например, бренд Braer не производит абрикосовый кирпич.
  • Знает, в какой категории какие характеристики бывают. Для строительного кирпича не показывает характеристику «Цвет».

В статье описан наш опыт разработки и seo продвижения магазинов с использованием умного фильтра.

Знакомьтесь, Умный Фильтр.

3.png

Почему нельзя использовать умный фильтр Битрикса «из коробки»?

  • Длинные избыточные адреса страниц. Также, если удалить последний /apply/ будет 404 ошибка.

4.png

  • Отдельную страницу с результатами фильтра нельзя оптимизировать — разместить заголовок и текст. Приходится использовать дополнительные модули (например, наши « Инструменты SEO-специалиста »).
  • Нельзя настроить канонический адрес автоматически.
  • Сброшенный фильтр возвращает вас к оригинальному списку товаров, но меняет адрес страницы: /catalog/pants/filter/clear/apply/ вместо /catalog/pants/.
  • Если у магазина товаров до 50 тысяч, а общее количество свойств не превышает 500, можно смело использовать умный фильтр битрикса. Он справится. Если товаров или свойств в разы больше, придется делать собственную разработку.
Ожидания покупателя от работы фильтра

Фильтр помогает найти товар.

Покупатель хочет, чтобы фильтр работал быстро. Выбрал галки, перезагрузил страницу, увидел результат.

Покупатель хочет, чтобы адреса страниц не менялись. Страницей фильтра можно поделиться, сохранить в закладки, выучить наизусть.

Поведение фильтра предсказуемо и понятно. Владельцы магазинов не всегда хотят тратить ресурсы на удобство работы пользователя с сайтом, оставляют задачи «на потом». Страдают, как правило, пользователи.

Для удовлетворения ожиданий покупатели (и увеличения конверсии в итоге) разработчик должен подумать и выполнить задачи:

  • Сделать удобный и понятный интерфейс фильтра.
  • В каждой категории магазина показывать важными несколько свойств, которые помогают покупателю совершить выбор. Остальные скрывать.
  • Продумать архитектуру фильтра так, чтобы запросов было минимальное количество и работал кеш. Влияет на скорость работы фильтра. Бонус — быстрые страницы хорошо влияют на пользовательские факторы сайта (важно для SEO).
  • Дополнительное требование про кеш: кэшированные страницы отдают правильный заголовок Last-Modified на дату кеширования.
  • Порядок сортировки и постраничная навигация должны передаваться в GET-параметрах. Вопрос про канонические страницы ниже в блоке про SEO.
  • Сделать минимум изменений в существующем программном коде. В идеале — небольшие надстройки «поверх» фильтра из коробки.
Какие флажки помещать в умный фильтр?

Как мы решали проблему сортировки характеристик / свойств фильтра в категориях.

Есть категории — Диваны и Люстры. У диванов есть свойства: двухместный, трехместный. У люстр — материал (сталь, стекло) и стиль (прованс, лофт). Какие флажки должны остаться в фильтре, в каком порядке? На основании чего принимать решение?

Для электроники, бытовой техники, инструментов, компьютеров можно подсмотреть флажки-свойства в Яндекс.Маркете. Как быть для других тематик?

Мы придумали следующий алгоритм:

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

Заметили, да? У всех ожидания, а у нас — требования. Отвечу от имени сеошников. Фильтр может оказаться бомбой замедленного действия, неповоротливой и инертной для поисковой машины. Лучше заранее все продумать и не совершать ошибок.

Фильтр может оказаться бомбой замедленного действия

Для внедрения SEO-требований подойдет «коробочный» фильтр Битрикса. Приблизительная оценка внедрения:

100 человеко-часов. Перечисляем в порядке важности приоритета. Если бюджета не хватает, отказывайтесь от нижних.

Уникальные title, keywords, description, h1 на страницах умного фильтра. Бонус — красивый и кликабельный сниппет в выдаче.

«Быстрые ссылки» — готовые результаты фильтра

Размещение текста на странице с фильтром

Правильные canonical и отсутствие дублей

Шаблоны правил для robots.txt

Автоматическое добавление в sitemap.xml

Генерация sitemap.xml с правильными ЧПУ одной кнопкой

Фильтр отдает правильные коды ответа.

SEO-специалист справится с настройкой без программиста.

Пояснения некоторых требований.

Уникальные title, keywords, description, h1.

Обратим особое внимание на важность уникальных заголовков и прочих мета-тегов. Если не предусмотреть автоматическую расстановку уникальных мета-тегов, в индекс попадет множество дублей. Поисковик посчитает страницы нерелевантными, поискового трафика не будет.

Как программировать быстрые фильтры:

В 1С создаем и загружаем на сайт пустые категории в соответствии с группами фраз из семантического ядра . Группы нельзя переименовывать, это важно.

На стороне сайта настраиваем привязки «Адрес категории — Адрес страницы фильтра».

Пишем код, который подставляет на страницу пустой категории список товаров с указанной страницы фильтра. Получается «ЧПУ над ЧПУ».

10.png

Бонус для пользователя — воспользоваться готовой ссылкой быстрее и удобнее, чем ковыряться в фильтре.

Некоторые SEO-специалисты считают, что в интернет-магазине вообще надо закрыть от индексации все страницы с результатами фильтра

Наша позиция — если вы настроите «Быстрые ссылки» и заведете необходимое количество по всему семантическому ядру, остальные страницы можно «спрятать». На продвигаемые запросы будут страницы (что хорошо). Не используемые — закрыты от поискового робота.

Размещение текста на странице с фильтром

В конкурентных тематиках на войне за поисковый трафик мы используем возможности сайта по-максимуму.

Размещение текстов на страницах категорий каталога помогает получить коммерческий трафик на сайт.

Чаще всего эту задачу делают вместе с предыдущей. Если есть категория — быстрая ссылка, значит можно разместить и опубликовать ее описание.

Правильные canonical и отсутствие дублей

На скриншоте ссылки «сортировка по цене», «алфавиту», «показывать по 20 — 40 — 60» не изменяют товары на странице, только их порядок. С точки зрения поисковика, никакой ценности эти страницы не представляют. SEO-специалисты используют специальный «канонический тег» для указания поисковой машине, какую страницу считать главной и оставить в выдаче.

6.png

Инструментов для настройки канонических тегов категорий в битриксе нет. Наш подход к настройке канонических страниц фильтра:

    По умолчанию по адресу категории без GET-параметров выводим страницу с сортировкой по цене по возрастанию и внешним видом «Плитка». Эту страницу назначаем канонической с помощью тега

<link rel=»canonical» href=»<адрес страницы>» />

Будьте аккуратнее — если среди запросов пользователей попадаются запросы «дорогие диваны», можно специально для них сделать релевантной страницу с сортировкой по цене от большей к меньшей.

Обратите внимание, Google рекомендует сделать для категории каталога канонической страницу «Показать все товары». Если на сайте товаров так мало, что их можно вывести на одной странице без ущерба производительности, можно назначить ее канонической «по-умолчанию».

Автоматическое добавление в sitemap.xml

В зависимости от того, закрываете вы страницы фильтра от индексации, или нет — подход к решению задачи может быть различным.

Читайте так же:
Групповой видеочат в скайпе

Сейчас мы делаем карту сайта «по старинке» — автоматически генерируем средствами битрикса и полуавтоматически добавляем адреса страниц фильтра.

Фильтр не требует квалификации программиста для настройки

Каждый раз приходится искать компромисс между удобством использования настроек для не-программистов и временем разработки.

Пока, лучшее решение — все настройки выносить в отдельные инфоблоки (highload-блоки), которые можно редактировать в интерфейсе админки.

Альтернативная попытка — сделать настройку через CSV или другой табличный формат — привела к провалу. Разобраться в хитросплетениях шаблонов названий элементов смог только его автор:

7.png

Пример файла настроек

Пример реализации механизма расстановки уникальных заголовков на страницах фильтра (сайт dg-home.ru).

9.png

  1. Разработали техническое задания для программирования — описали, какие должны быть заголовки и мета-теги страниц рубрики, фильтра, карточки товара.
  2. Используем бесплатную библиотеку морфологического анализа phpMorphy ( http://phpmorphy.sourceforge.net/dokuwiki/ ). phpMorphy умеет склонять слова русского языка — заголовки и мета-описания получаются фонетически грамотными и привлекательными для пользователей.
  3. Готовим CSV-файлики с настройками для какой категории какое свойство в каком порядке выводить и как правильно склонять его название.
  4. На странице каталога в component_epilog.php размещаем код, который проверяет настройки в CSV для данной категории и устанавливает в соответствии с ними Title, H1, мета-теги. При большом объеме настройки надо выносить в инфоблоки или highload-блоки.

Перенос умного фильтра в Битриксе

Умный фильтр

В этом видеоуроке Вы узнаете о том, как перенести умный фильтр в интернет-магазине на 1С-Битрикс в любую другую область страницы.

В типовом адаптивном шаблоне магазина на Битриксе, когда используется вертикальное главное меню, фильтр товаров имеет горизонтальный вид, и в этом варианте выглядит не аккуратно. С моей точки зрения. Зато под вертикальным меню есть куча свободного места, особенно если под меню не выводится блок ранее просмотренных товаров. Вот туда мы и перенесем умный фильтр.

Я покажу 2 способа:

  1. С помощью буферизации вывода стандартными функциями PHP (4 строки кода). Есть некоторые существенные ограничения.
  2. С помощью механизма отложенных функций Битрикса (3 строки кода). Тут нет вообще никаких ограничений. Как говорится, знать всем.

Урок не большой и достаточно простой, хоть и касается разработки. Поэтому может пригодится всем, кто использует шаблон с вертикальным меню. Хотя способ подойдет для переноса любых блоков сайта в другое место, как в конструкторе.

Все подробности в этом видеоуроке:

На этом сегодня все! Не забываем жать на социальные кнопки слева и задавать свои вопросы чуть ниже в комментариях!

Стрела влево

Если вам понравилась статья, то нажмите на одну из кнопок социальных сетей для размещения ссылки на страницу в своей ленте в этой соцсети.

Вам также будет интересно:

Комментарии (19):

Алексей

21 февраля 2015 в 00:30 | #

Ваш урок очень помог. Перенес у себя фильтр под меню слева. И как писали выше отбора не происходит, ищу где чего прикрутить надо.

У меня вопрос, может подскажите, хотел в фильтре рядом с названием свойства сделать дополнительную инфу. Так же как в настройках это реализовано, картинка со знаком вопроса, при наведении мышки небольшой faq отображается

Дмитрий Акифьев

21 февраля 2015 в 09:29 | #

По первому вопросу посмотрите ниже комментарии, там Алексей давал ссылку на статью как перенести фильтр вообще куда хочется, даже без привязки к Каталогу.

По второму вопросу — всё можно сделать. У каждого свойства в админке даже есть такое специальное поле — Подсказка, куда можно писать описание поля. Только отображается это поле сейчас в форме редактирования товара в админке слева от названия свойства и больше нигде. Но, доработав код шаблона фильтра можно то же самое сделать и в самом фильтре. Было бы желание. Но я не обучаю программированию, поэтому ищите ответ в другом месте.

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector