1. Скачиваем и устанавливаем модуль из Маркетплейс:
    Установка из Маркетплейс

  2. Находим текущий используемый шаблон в компоненте "Умный фильтр" Открываем страницу любого раздела и включаем режим правки
     Режим правки

  3. Находим на странице компонент "Умный фильтр" и жмем редактировать шаблон компонента
    Компонент умный фильтр

  4. В открывшимся окне видим путь до файла шаблона, жмем "редактировать в панели управления"
    Путь до шаблона

  5. В Административной части заходим в папку шаблона и открываем на редактирование (или создаем файл result_modifier.php)
    Папка шаблона

  6. Добавляем код в самый низ файла
    if (\Bitrix\Main\Loader::includeModule('yenisite.seofilter')) {
    	CRZSeoFilter::init($this);
    }
    
    Код в result_modifier

  7. На этом этапе у Вас заработает установка всех СЕО параметров, кроме SEO текстов для описания (RZ_SEO_TOP, RZ_SEO_BOT, RZ_SEO_MID) и не будет поддержки работы фильтра по AJAX.

  8. Начнем с описаний. В нужных местах шаблона вам надо разместить заглушки по имени области
    #RZ_SEO_TOP# — Верхнее описание
    #RZ_SEO_BOT# — Нижнее описание
    #RZ_SEO_MID# — Дополнительное описание

    Эти заглушки будут заменены на описания из фильтра, либо если фильтр не активен, то будет произведена замена из поля "Описание" [DESCRIPTION] для текущего раздела.

    !!! ВНИМАНИЕ !!! в логике работы предусмотрено разделение описания раздела по тегу #DELIMETER#, 
    то есть если ваше описание раздела выглядит как 
    "Верхний текст #DELIMETER# нижний сео текст"
    то модуль автоматически разобьет такое описание на два 
    "Верхний текст" и "нижний сео текст" и соответственно заменит хэштеги #RZ_SEO_TOP# и #RZ_SEO_BOT#

  9. !!! ВНИМАНИЕ !!! для выполнения дальнейших пунктов необходимо обладать навыками веб-разработчика, также настоятельно рекомендуем перед редактированием файлов создать для них резервные копии

  10. Чтобы использовать поддержку AJAX применения фильтра, вам достаточно использовать встроенную в модуль функцию window.rzSeoFilter которая в качестве единственного аргумента принимает объект который будет доступен а $arResult['SEO_FILTER']. На примере стандартного шаблона Умного фильтра (который входит в поставку Битрикс) достаточно добавить такую строку в файл script.js в папке шаблона:
    if ('SEO_FILTER' in result && typeof window.rzSeoFilter != 'undefined') {
    	window.rzSeoFilter(result.SEO_FILTER);
    }
    
    В функцию
    JCSmartFilter.prototype.postHandler
    Стандартный компонент фильтра

    Теперь все СЕО параметры (кроме текстов описания RZ_SEO_TOP, RZ_SEO_BOT, RZ_SEO_MID) будут заменятся "на лету". Учтите что тег H1 должен быть единственным на странице!


  11. Теперь для полноценной AJAX поддержки осталось только добавить замену на AJAX нужных описаний, вот примерный код которым можно воспользоватся в той же функции 
    JCSmartFilter.prototype.postHandler
    Все необходимые данные уже есть у нас в объекте result.SEO_FILTER
    if('SEO_TEXT' in result.SEO_FILTER) {
    	if('RZ_SEO_TOP' in result.SEO_FILTER.SEO_TEXT) {
    		var $desc = $('.rz_category_desc_top'); // нужный селектор верхнего описания
    		if($desc.length) {
    			$desc.html(result.SEO_FILTER.SEO_TEXT.RZ_SEO_TOP);
    		}
    	}
    	if('RZ_SEO_BOT' in result.SEO_FILTER.SEO_TEXT) {
    		var $desc = $('.rz_category_desc_bottom');  // нужный селектор нижнего описания
    		if($desc.length) {
    			$desc.html(result.SEO_FILTER.SEO_TEXT.RZ_SEO_BOT);
    		}
    	}
    }
    
  12. Конечный результат