[spoiler]
Во-первых, хочется обрадовать пользователей модуля — его бета-версии перешли в релиз. Мы объясним, почему этого момента пришлось подождать. Давайте по уже устоявшейся традиции разделим статью на основные части и пойдем по порядку:
- Предисловие
- Рефакторинг кода модуля
- Выпуск стабильной версии и нововведение
- Нововведения, оптимизация и исправления в функционале
Если вы попали на эту статью случайно и еще не знаете, что за модуль
2. Рефакторинг кода модуля
Модуль Сотбит: SEO умного фильтра был опубликован на Маркетплейс в начале 2016 года, и пользуется большой популярностью до сих пор. Прежде чем радовать пользователей 1С-Битрикс новым функционалом, мы решили провести рефакторинг. И когда код приведен в надлежащий вид, можно дальше развивать модуль.
Рефакторинг — это процесс улучшения кода. Результатом работы является чистый код. Чистый код повышает качество продукта, его просто читать, понимать и поддерживать. |
1) Оптимизация
Клиенты обращались к нам с просьбой увеличить скорость работы модуля, особенно — компонента облака тегов. Для решения этой задачи нам было необходимо уменьшить число запросов и, как следствие, в целом увеличить скорость работы модуля.Мы предусмотрели в модуле настройку для облака тегов «Без перегенерации». В таком случае вам сначала нужно сгенерировать ЧПУ, а после сами теги будут браться из таблицы ЧПУ. Соответственно, не будут генерироваться по новой. Мы произвели замеры скорости работы:
- До оптимизации: 5-10 секунд;
- После оптимизации: 0,6 секунды.
Замеры скорости работы компонента облака тегов
Как мы написали, для ускорения работы сначала потребуется сгенерировать ЧПУ. Поэтому мы оптимизировали также и скорость генерации ЧПУ в модуле. Замеры скорости генерации:- До оптимизации: 40 секунд;
- После оптимизации: 10 секунд.
- Количество свойств;
- Количество значений свойств.
Замеры скорости генерации ЧПУ
2) Дальнейшее развитие модуля
Поскольку результатом рефакторинга является чистый код, это значительно упрощает дальнейшее развитие модуля. Это значит, что мы все также будем продолжать радовать вас новыми обновлениями, и сам процесс станет для нас проще.При рефакторинге новая функциональность не появляется. Пользователи увидят результат рефакторинга в плане скорости работы нашего модуля, но на самом деле нами была проделана огромная работа. Просто это находится под капотом.
3. Выпуск стабильной версии и нововведение
Многие владельцы модуля обратили внимание на то, что в последнее время мы выпускали обновления на Сотбит: SEO умного фильтра в beta-версии. И вот, спустя месяцы плодотворной работы отдела разработки, мы выпускаем в релиз стабильные версии модуля
И уже сейчас мы радуем вас нововведением! Вы просили нас сделать работу с условиями в модуле проще. Теперь при выборе условия вам доступна строка поиска. Поэтому работа с созданием условий станет намного легче, ведь вам не нужно искать среди множества свойств нужное.
Так что если по какой-то причине вы еще не используете модуль в своем интернет-магазине (читайте “недополучаете трафик”), то устанавливайте его бесплатно в демо-режиме для тестирования. Наша бесплатная техподдержка поможет настроить модуль еще на этапе тестирования.
При возникновении вопросов по возможностям модуля или его настройкам, свяжитесь с нами удобным для вас способом:
4. Нововведения, оптимизация и исправления в функционале
Давайте рассмотрим, какая работа была проделана вплоть до версии модуля 2.0.5:
1.6.0
Новые функциональные возможности:
- Внедрен функционал склонения слов (морфология);
- Добавлена настройка «Делать ЧПУ активными при генерации»;
- Добавлена шкала прогресса при генерации ЧПУ;
- Добавлена возможность задавать пользовательскую маску формирования ссылок;
- Добавлена шкала прогресса при генерации карты сайта.
- Исправлена работа условий с типом свойств: привязка к элементам, привязка к разделам;
- Исправлена ошибка формирования названия тегов;
- Исправлена ошибка настройки "Условие участвует в поиске";
- Исправлены ошибки формирования метаинформации при использовании в условии цен товара;
- Исправлены ошибки подстановки пользовательских полей в метаинформацию;
- Исправлена ошибка работы со спецсимволами, содержащими в коде знак #, например, emoji;
- Исправлена ошибка формирования карты сайта с количеством ссылок превышающим 50 000;
- Исправлены ошибки отображения пунктов меню в административной части;
- Оптимизировано поведение вкладок в условиях. Теперь при сохранении условия Вы остаетесь на прежней вкладке;
- Исправлена некорректная работа строгого соответствия для срабатывания ЧПУ.
Оптимизация и исправления:
- Исправлена ошибка пропадания глобального меню Сотбит в административной части;
- Исправлены ошибки пагинации во вкладке "Условия" в таблице "ЧПУ".
Оптимизация и исправления
- Исправлена генерация карты сайта;
- Исправлены ошибки пагинации списка ЧПУ.
Исправления и оптимизация:
- Исправлена критическая ошибка сортировки в административных настройках решения.
Оптимизация и исправления
- Исправлена ошибка генерации карты сайта;
- Исправлены критические ошибки, вызванные отсутствием требуемых классов в ранних версиях БУС.
Оптимизация:
- Полностью переработана логика основных методов генерации (ЧПУ / Карта сайта, Теги);
- Значительно сокращено количество обращений к БД;
- Время генерации ЧПУ / Тегов ускорено в 2,5-5 раз. Скорость генерации напрямую зависит от произведения количества значений свойств в условии.
Новые функциональные возможности:
- В компонент облака тегов добавлена настройка переключения режимов работы, с перегенерацией условий и без перегенерации. Внимание! Данная доработка распространяется только на стандартный компонент облака тегов.
- Исправлена ошибка генерации для фильтра "Битрикс без ЧПУ";
- Исправлена ошибка подстановки плейсхолдеров в метаданных условий;
- Исправлена ошибка определения нахождения ЧПУ в карте сайта;
- Исправлена ошибка подсчета товаров по ссылке.
Оптимизация и исправления:
- Исправлена ошибка генерации ЧПУ;
- Исправлен ряд ошибок, возникающих при работе модуля на версии PHP 7.4;
- Исправлены ошибки, вызываемые заменой URL страницы, в частности, добавления товаров в корзину на посадочных страницах. Подмена ссылки не происходит при наличии параметра add2basket;
- Исправлена ошибка некорректного отображения первой заглавной буквы в тегах.
Оптимизация и исправления:
- Исправлены ошибки определения статуса ссылки в карте сайта;
- Исправлены ошибки кнопки генерации карты сайта;
- Исправлена ошибка отображения названия тега в случае, если функционал морфологии отработал с ошибкой.
Новые функциональные возможности:
- Добавлен поиск в списке свойств при формировании условия;
Оптимизация и исправления:
- Исправлена ошибка генерации ЧПУ при конкретном значении цены;
- Оптимизация логики работы диапазонных значений;
- Оптимизация логики работы и/или в условиях