Создание сайтов на 1С Битрикс стало еще просто, используйте готовые шаблоны! Подключайте современные модули, делая ваш сайт еще эффективнее!
Например, парсер сайтов

Кимет: Умный фильтр - SEO - Заголовки, мета-теги, карта сайта

9 800 i
Заказать
Оформление заказа
х
В наличии
Модуль расширяет возможности стандартного «Умного фильтра» системы управления 1С-Битрикс. Добавляет возможность для выборок задавать заголовки, мета-теги, текстовые SEO области. Позволяет включать выборки в карту сайта.

Для кого предназначен данный модуль?

Модуль «Кимет: Умный фильтр - SEO - Заголовки, мета-теги, карта сайта» является расширением стандартного компонента 1С-Битрикс «Умный фильтр». Стандартный фильтр, несмотря на свою отличную работу, имеет один недостаток – для выборок товаров нельзя задавать отдельные заголовки, мета-теги и SEO текст, также нельзя определенные выборки включать в карту сайта.

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

Преимущества модуля
  • Модуль основан на функционале Инфоблоков, поэтому работают все события, соблюдается иерархия
  • Возможность генерации адресов фильтра без промежуточного каталога filter
  • Модуль позволяет генерировать сразу наборы выборок, что значительно убыстряет работу SEO специалиста
  • Работают шаблоны для мета-тегов и заголовков, что позволяет одним шаблоном проставить нужную информацию на целую группу выборок фильтра
  • Выборки можно добавлять в sitemap
Установка



Переходим на вкладку «Marketplace», далее «Установленные решения» и устанавливаем модуль «Кимет: Умный фильтр - SEO - Заголовки, мета-теги, карта сайта». Модуль должен успешно установиться в систему.



Создание фильтра



Переходим к созданию фильтра. Вкладка «Маркетинг» - «Кимет: Умный фильтр». Выбираем «Добавить фильтр».



Выбираем инфоблок и название для фильтра. Нажимаем кнопку «Сохранить».







Генерация выборок



Переходим на вкладку «Генерация данных». С помощью кнопки «Добавить правило» добавляем правила для генерации структуры SEO фильтра.





Задаем раздел каталога. Чекбокс «Перегенерировать» сообщает, что правило требует генерации, когда правило будет сгенерировано, чекбокс автоматически снимется.

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





На вкладке «Свойства» выбираем свойства, которые будут участвовать в формировании SEO фильтра и порядок их применения.

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

Жмем кнопку «Сохранить».

Генерация структуры фильтра

Нажимаем кнопку «Генерировать».



И переходим непосредственно к процессу генерации фильтра.



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

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

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

Проверяем правильность путей в инфоблоке Фильтра и устанавливаем доступ для каких пользователей должен

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

Настройка комплексного компонента каталога

В начало шаблона вывода раздела каталога комплексного компонента вставляем код (файлы section.php, section_vertical.php или section_horizontal.php), который отвечает за переопределение переменных:

if(Loader::includeModule('kimet.seofilter')) {



CKimetSeoFilter::RedefineComponentVariables($arParams["IBLOCK_ID"], $arResult["VARIABLES"]);

$arCurSection['ID'] = $arResult["VARIABLES"]["SECTION_ID"];



}

В комплексном компоненте каталога меняем область видимости компонента с «bitrix» на «kimet.seofilter».



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

       

if(Loader::includeModule('kimet.seofilter')) {



        



            if($hFilter =

CKimetSeoFilter::InitByIBlockID($arParams["IBLOCK_ID"])) {



                



                $hFilterItem =

$hFilter->FindSeoFilterItemByPath(($arResult["VARIABLES"]["SECTION_CODE_PATH"]?$arResult["VARIABLES"]["SECTION_CODE_PATH"]:$arResult["VARIABLES"]["SECTION_CODE"])."/".$arResult["VARIABLES"]["SMART_FILTER_PATH"]);



                



                if($hFilterItem) {



                    



                   

if(strlen($hFilterItem->Get("DESCRIPTION"))) {



                        



                        echo '<div

class="include-bottom">'.$hFilterItem->Get("DESCRIPTION").'</div>';



                    }



                    



                   

$hFilterItem->initMetaData();



                }



            }



        }



Заполнения заголовков и мета-информации

Заполнение мета-тегов и заголовков ведется стандартным способом с помощью вкладки SEO во вновь созданном инфоблоке.

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



Карта сайта

Для того чтобы выборки участвовали в sitemap при генерации фильтра необходимо установить чекбокс «Генерация элементов (для карты сайта)».

Генерация карты сайта осуществляется стандартными средствами 1С-Битрикс.

Кастомизация фильтра

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

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

Пример события для добавления минимальной цены выборки в мета-теги:

if (\Bitrix\Main\Loader::includeModule('iblock') && \Bitrix\Main\Loader::includeModule('kimet.seofilter')) {        \Bitrix\Main\EventManager::getInstance()->addEventHandler(        "iblock",        "OnAfterIBlockSectionAdd",        "SetMinPriceFilterHandler"    );     \Bitrix\Main\EventManager::getInstance()->addEventHandler(        "iblock",        "OnAfterIBlockSectionUpdate",        "SetMinPriceFilterHandler"    );     function SetMinPriceFilterHandler($arFields) {                if ($arFields["IBLOCK_ID"] == "7") {                        $priceGroup = "1";            $sectionID = $arFields["ID"];            \Bitrix\Main\Loader::includeModule("catalog");            \Bitrix\Main\Loader::includeModule('currency');                                                    if($hFilter = CKimetSeoFilter::InitByFilterIBlockID($arFields["IBLOCK_ID"])) {                            $hFilterItem = new CKimetSeoFilterItem($hFilter);                if($hFilterItem->Init($sectionID) && $hFilterItem->IsValue()) {                     $arCatalogSection = $hFilterItem->GetCatalogSection();                     $elementSection = new Bitrix\Main\Entity\Query('\Bitrix\Iblock\SectionElementTable');                                        $arFilter = array('IBLOCK_ID' => $arCatalogSection['IBLOCK_ID'], 'ACTIVE' => 'Y', 'SECTION_ID' => $arCatalogSection["ID"], "INCLUDE_SUBSECTIONS" => "Y");                    $arPropertyValues = $hFilterItem->PropertyValues();                     foreach($arPropertyValues as $iPID => $sValue) $arFilter["PROPERTY_".$iPID] = $sValue;                     $rsElement = CIBlockElement::GetList(array(), $arFilter, false, false, array('ID'));                    while ($arElement = $rsElement->Fetch()) $arElementsID[] = $arElement['ID'];                                         $arItem = \Bitrix\Iblock\ElementTable::getList(                        [                            'filter' => ['=ID' => $arElementsID],                            'order' => ['PriceTable.PRICE_SCALE' => 'asc'],                            'select' => [                                'PriceTable.PRICE_SCALE',                            ],                            'limit' => 1,                            'runtime' => [                                new \Bitrix\Main\Entity\ReferenceField(                                    'PriceTable',                                    \Bitrix\Catalog\PriceTable::class,                                    ['=this.ID' => 'ref.PRODUCT_ID', $priceGroup => 'ref.CATALOG_GROUP_ID'],                                    ['join_type' => 'RIGHT']                                )                            ]                        ]                    )->fetchRaw();                    if (!empty($arItem)) {                         $minPriceSection = \CCurrencyLang::CurrencyFormat(reset($arItem), \Bitrix\Currency\CurrencyManager::getBaseCurrency());                    }                     $GLOBALS["USER_FIELD_MANAGER"]->Update("IBLOCK_".$arFields["IBLOCK_ID"]."_SECTION", $arFields["ID"], array("UF_MIN_PRICE" => $minPriceSection));                                        return $minPriceSection;                }            }        }    } }

Пример, шаблона для заголовка браузера:

 Купить обувь из искусственных материалов по цене {=this.property.min_price}




ИТЦ Кимет / kimet.ru



Телефон: (4852) 68-20-35

Email: promo@byanka.ru


x