Что такой Sitemap

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

Что такое “changefreq” и “priority” файлах sitemap.xml

Changefreq” в файле sitemap.xml - это атрибут, который указывает поисковым системам, с какой частотой ваша страница обычно меняется. Вы можете указать значение "always" (частотные изменения), "hourly" (ежечасные изменения), "daily" (ежедневные изменения), "weekly" (еженедельные изменения), "monthly" (ежемесячные изменения), "yearly" (ежегодные изменения) или "never" (изменения не происходят).

Priority” в файле sitemap.xml - это атрибут, который указывает поисковым системам, какую важность вы присваиваете вашей странице относительно других страниц на вашем сайте. Значение priority может быть от 0.0 до 1.0, где 1.0 означает наивысшую важность.

Эти атрибуты (changefreq и priority) помогают поисковым системам понять, как часто обновляются ваши страницы и какова их важность в контексте вашего сайта.


Проблемы с Sitemap в стандартном модуле "Поисковая оптимизация (seo)" от 1С-Битрикс.

Почему же нужен отдельный модуль управления индексацией?

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

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

И вот перечень основных проблем:

  • Нет возможности указать changefreq и priority для адресов в sitemap ни в каком виде;
  • Нет тонкой настройки фильтров для выгрузки элементов инфоблоков. Нельзя указать какие элементы не нужны в sitemap;
  • Нет выгрузки картинок в специальный sitemap-файл;
  • Нет возможности настроить автоматическую перегенерацию sitemap, только руками генерировать при каждой необходимости;
  • При большом количестве товаров на сайте, изменение/добавление каждого товара происходит с задержкой, т.к. каждый раз Битрикс просматривает файлы sitemap для его актуализации;
  • Нельзя управлять количеством адресов (есть ограничения) и размером sitemap-файлов;
  • Нельзя добавлять произвольные адреса в sitemap;
  • При установленном модуле "SЕО умного фильтра" от Сотбит, генерация sitemap модуля "Поисковая оптимизация" перезатирает добавленные файлы от "SЕО умного фильтра".

Все эти проблемы могут решить Расширенный SEO-модуль: управление индексацией сайта и Расширенная SEO карта сайта Smart Sitemap: автогенерация, легкое управление и настройка

Возможности Sitemap в модуле Расширенная SEO карта сайта Smart Sitemap: автогенерация, легкое управление и настройка

Раздел "Sitemap.xml" модуля "Расширенная SEO карта сайта Smart Sitemap: автогенерация, легкое управление и настройка" обладает следующими возможностями:

  • Формирование отдельного sitemap для каждого сайта, в режиме многосайтовости;
  • Ежедневное автоматическое обновление sitemap;
  • Возможность указать параметры changefreq и priority для каждой сущности;
  • Генерация специальной sitemap для картинок инфоблоков;
  • Возможность создавать правила исключения из sitemap для товаров без цены;
  • Возможность указать минимальную цену товара для выгрузки в sitemap;
  • Поддержка событий. Возможность тонкой настройки фильтров элементов, которые попадают в sitemap при определенных условиях;
  • Возможность добавить любые произвольные адреса в sitemap;
  • Поддержка модуля "SEO-умного фильтра" от Сотбит;
  • Поддержка мультирегиона от Люксар Групп и Аспро (скоро).

О модуле

Установка модуля

На странице модуля https://marketplace.1c-bitrix.ru/solutions/luxar.sitemap/ нажмите “Купить”. Произведите оплату заказа. Вам на почту придет номер купона.

Для активации купона перейдите в административную часть своего сайта, пройдите по пути “Marketplace” - “Обновление платформы”. На вкладке “Активация купона” активируйте полученный купон:


После успешной активации купона, перейдите по пути “Marketplace” - “Установленные решения”.

В списке “Купленные решения” вы увидите модуль “Расширенная SEO карта сайта Smart Sitemap: автогенерация, легкое управление и настройка” уже готовый к установке.

Нажмите на кнопку “Меню”, слева от названия решения и выберите “Загрузить”.

Откроется ваш сайт на странице установки. Выберите чекбокс рядом с модулем, если он не выбран, и нажмите кнопку “Загрузить”.

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

После скачивания модуля, система предложит вам его установить. Нажмите кнопку “Установить”.

Модуль установится на сайт и вы увидите сообщение об успешной установке модуля на сайт:

После этого вы можете приступать к настройке модуля.

Демо-версия модуля и ее ограничения

Перед покупкой модуля вы можете попробовать в работе модуль “Расширенная SEO карта сайта Smart Sitemap: автогенерация, легкое управление и настройка”.

Ограничения демо-версии

Демо-версия модуля имеет следующие ограничения:

  • Время работы модуля - 3 дня;
  • Количество адресов в Sitemap - не более 10 шт. у каждого инфоблока;

Установка демо-версии

Чтобы установить демо-версию, на странице модуля https://marketplace.1c-bitrix.ru/solutions/luxar.sitemap/ нажмите на кнопку “Попробовать” 



В открывшемся поле, введите адрес вашего сайта и нажмите “Установить”.

Откроется ваш сайт на странице установки. Выберите чекбокс рядом с модулем, если он не выбран, и нажмите кнопку “Загрузить”.

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

После скачивания модуля, система предложит вам его установить. Нажмите кнопку “Установить”.

Модуль установится на сайт и вы увидите сообщение об успешной установке модуля на сайт:

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

После этого вы можете приступать к детальной настройке модуля.



Создание/изменение Sitemap

Для управления Sitemap необходимо перейти по пути: “Решения Luxar” - “Управление Sitemap.xml” - “Sitemap”, либо по адресу  вашсайт.ru/bitrix/admin/luxar.sitemap_sitemap.php. Откроется список уже добавленных Sitemap, если таковые имеются. 

Для создания новой Sitemap нажмите кнопку “Добавить (Название сайта)” в правом верхнем углу.


Если у вас в системе несколько сайтов, которые используются в режиме многосайтовости, то нажмите на “Стрелку вниз”, на кнопке “Добавить”, чтобы открыть список существующих сайтов, и нажмите на сайт, на который нужно добавить Sitemap.


Если вы хотите изменить настройки существующей Sitemap, то нажмите на название, либо выберите в контекстном меню пункт “Редактировать” нужной вам Sitemap.


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

Базовые настройки

Форма добавления/редактирования Sitemap выглядит так:


Название - Заголовок Sitemap, который отображается только в списке Sitemap.

Описание - Служебное поле, служит для заметок.

Название файла карты сайта - В этом поле составляется имя базового файла Sitemap. Обычно это “sitemap.xml”. Здесь требуется выбрать протокол, по которому работает ваш сайт, а также домен, который будет указан во всех адресах, которые относятся к данной Sitemap.

Домены в выпадающий список попадают из настроек сайта: ”Настройки” - ”Настройки продукта” - “Сайты” - “Список сайтов” - Ваш сайт. В списке будут домены, которые указаны в полях “Название” и “Доменное имя”.

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

Максимальное количество адресов в одном файле и Максимальный размер файла sitemap в байтах - Эти поля задают настройки файлов Sitemap.
Максимальные рекомендуемые значения для этих полей: 50000 для количества адресов и 50000000 размер файла.

Автоматическая генерация на агенте - Если поставить этот чекбокс, то карта сайта будет автоматически генерироваться один раз в сутки, в противном случае для генерации карты нужно будет нажимать кнопку “Запустить” в списке Sitemap при необходимости.

Файлы

Форма настроек файлов выглядит так:

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

Добавлять "/" в конце папки - При выбранной данной настройке в конец адреса папки будет добавляться слэш - “/”, например, в этом случае адрес папок будет выглядеть так “вашсайт.ru/bitrix/about/”, а при убранном чекбоксе  “вашсайт.ru/bitrix/about”.

Убирать "index.php" - Из адреса будет убран файл “index.php”.

Выберите "changefreq" и Выберите "priority" - Эти поля устанавливают соответствующие настройки для физических папок и файлов сайта.

Включаемые файлы - В данном поле можно задать маску файлов, которые нужно включить в Sitemap. 

Переключатель Использовать - Позволяет переключить тип отображения иерархии файлов и папок в блоке “Структура сайта”, который расположен ниже.

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

Инфоблоки

Форма настройки инфоблоков выглядит так:


Шаблон имени файла карты сайта с данными инфоблоков - в этом поле нужно указать, или оставить по умолчанию, шаблон sitemap-файлов, который будет формироваться. В шаблоне обязательно нужно использовать маску “#IBLOCK_ID#”, т.к. адреса каждого инфоблока записываются в свой отдельный файл.

Далее идет список типов инфоблоков, которые есть на сайте и которые относятся только к выбранному на начальном этапе сайту. Т.е. если вы добавляете Sitemap для сайта s1, то в данный список не попадут инфоблоки от сайта s2.

Если выбрать чекбокс какого-нибудь типа инфоблока, то раскроется список инфоблоков, которые входят в этот тип.


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

Над инфоблоками есть чекбоксы:

Список - в Sitemap будет добавлен адрес страницы информационного блока, который задается в его настройках:


Секции - Будут ли добавлены секции (разделы) инфоблока в Sitemap.

Элементы - Будут ли добавлены элементы инфоблока в Sitemap.

Картинки - При выбранном чекбоксе, из инфоблока будут собираться ссылки на картинки, которые есть у элементов инфоблока.

Картинки берутся из полей “Картинка для анонса”, “Детальная картинка”, из свойств типа “Файл”, а также из текстов элементов инфоблока.

Напротив каждого инфоблока есть кнопка “Настройки”, при нажатии на которую, открывается диалог выбора детальных параметров для данного инфоблока:

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


Также, у выбранных инфоблоков будет возможность указать разделы, которые требуется добавить в Sitemap. Если разделы не указывать, то будут добавлены все активные разделы и подразделы инфоблока.

Важно. Чтобы в Sitemap попали торговые предложения товаров, в настройках инфоблока ТП должен быть корректно указан “URL страницы детального просмотра”:


СЕО умного фильтра от Сотбит

Если на вашем сайте установлен модуль “Сотбит: SEO умного фильтра – мета-теги, заголовки, карта сайта” https://marketplace.1c-bitrix.ru/solutions/sotbit.seometa/, то в настройках Sitemap появится вкладка “SEO умного фильтра”:


На этой вкладке вы можете включить формирование Sitemap, задать шаблон имени файла Sitemap, а также указать минимальное количество элементов, которое находится на странице с фильтром.

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

Использование данного функционала избавит вас от необходимости постоянного формирования карты сайта через сам модуль “Сотбит: SEO умного фильтра – мета-теги, заголовки, карта сайта”, и вы можете быть уверены, что все сформированные страницы фильтра всегда будут в файле Sitemap.

Дополнительные адреса

Модуль “Расширенная SEO карта сайта Smart Sitemap: автогенерация, легкое управление и настройка” позволяет вам добавлять произвольные адреса для индексации, которые не подходят под иные условия, которые формируются в массовом порядке.

К таким адресам могут относиться ссылки на документы, которые лежат, например в папке “upload”.

Форма добавления дополнительных адресов выглядит так:

Укажите, или оставьте по умолчанию, шаблон имени файла с дополнительными адресами. Выберите changefreq и priority в соответствующих полях.

Ссылки можно указывать как с “http/https” в начале, так и относительные, например “/about/”.

Генерация Sitemap

Генерацию файлов Sitemap можно выполнить как в ручном режиме, так и включить автоматический режим генерации один раз в сутки.

Для генерации в ручном режиме, перейдите в список добавленных Sitemap, и нажмите кнопку “Запустить”, напротив нужной Sitemap. На странице будет отображаться прогресс генерации, а при окончании процесса, будет выведен список файлов, который сформировался:


Для просмотра сформированного файла, достаточно на него нажать и он откроется в новом окне.


События модуля

События модуля “Расширенная SEO карта сайта Smart Sitemap: автогенерация, легкое управление и настройка” позволяют влиять на формирование sitemap на сайте.

Событие “OnBeforeSitemapIndexFileGeneration”

Событие “OnBeforeSitemapIndexFileGeneration” вызывается перед генерацией главного файла sitemap.xml, когда уже все sitemap-файлы сформированы, и получает список всех sitemap-файлов.

Может быть полезно, если в главный файл sitemap.xml нам нужно добавить дополнительные файлы, например от других модулей.

Получает параметры:

ID - ID sitemap.

FILES - Массив сформированных файлов.


Пример использования:

$eventManager = \Bitrix\Main\EventManager::getInstance();
$eventManager->addEventHandler(
    'luxar.sitemap',
    "OnBeforeSitemapIndexFileGeneration",
    ['LuxarSitemapEventes', 'handlerOnBeforeSitemapIndexFileGeneration']
);

class LuxarSitemapEventes {

    public static function handlerOnBeforeSitemapIndexFileGeneration($event) {
        $arParam = $event->getParameters();

        $sitemapId = $arParam['ID'];
        $sitemapFilesList = $arParam['FILES'];

        if ($sitemapId == 1) {
            /*
             * Что-то делаем со списком, например, добавляем еще файлы
             */
            $sitemapFilesList[] = 'https://site.ru/sitemap_one.xml';
            $sitemapFilesList[] = 'https://site.ru/sitemap_two.xml';
            $sitemapFilesList[] = 'https://site.ru/sitemap_three.xml';

            $result = new \Bitrix\Main\EventResult(
                \Bitrix\Main\EventResult::SUCCESS,
                $sitemapFilesList
            );
            return $result;
        }
    }
}

Событие “OnAfterSitemapGeneration”

Событие “OnAfterSitemapGeneration” вызывается после генерацией главного файла sitemap.xml, когда уже все sitemap-файлы сформированы и записаны в главный файл sitemap.xml.

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

Получает параметры:

ID - ID sitemap.

FILES - Массив сформированных файлов.


Пример использования:

$eventManager = \Bitrix\Main\EventManager::getInstance();
$eventManager->addEventHandler(
    'luxar.sitemap',
    "OnAfterSitemapGeneration",
    ['LuxarSitemapEventes', 'handlerOnAfterSitemapGeneration']
);

class LuxarSitemapEventes {

    public static function handlerOnAfterSitemapGeneration($event) {
        $arParam = $event->getParameters();

        $sitemapId = $arParam['ID'];
        $sitemapFilesList = $arParam['FILES'];

        if ($sitemapId == 1) {
            /*
             * Что-то делаем со списком, например, отправляем оповещение, что sitemap сформирован
             */
        }
    }
}

Событие “OnSitemapGenerationFilterIblockSection”

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


Получает параметры:

ID - ID sitemap.

FILTER - Фильтр для дополнительной выборки разделов инфоблока, которые попадут в файл Sitemap.

Возможна отмена генерации sitemap для разделов инфоблока.

Пример использования:

$eventManager = \Bitrix\Main\EventManager::getInstance();
$eventManager->addEventHandler(
    'luxar.sitemap',
    "OnSitemapGenerationFilterIblockSection",
    ['LuxarSitemapEventes', 'handlerOnSitemapGenerationFilterIblockSection']
);

class LuxarSitemapEventes {

    public static function handlerOnSitemapGenerationFilterIblockSection($event) {
        $arParam = $event->getParameters();

        $sitemapId = $arParam['ID'];
        $arFilter = $arParam['FILTER'];

        if ($sitemapId == 1) {
            /*
             * Что-то делаем с фильтром
             */
            $result = new \Bitrix\Main\EventResult(
               \Bitrix\Main\EventResult::SUCCESS,
               $arFilter)
            ;
            return $result;
        }
        else {
            /*
             * Отменяем генерацию sitemap для разделов инфоблока
             */
            $result = new \Bitrix\Main\EventResult(
               \Bitrix\Main\EventResult::ERROR,
            );
            return $result;
        }
    }
}

Событие “OnSitemapGenerationBeforeIblockElement”

Событие “OnSitemapGenerationBeforeIblockElement” вызывается перед добавлением элемента инфоблока в sitemap. Этим событием можно повлиять на ссылку на элемент, либо исключить элемент из файла sitemap.

Получает параметры:

ID - ID sitemap.

FIELDS - Массив с полями элемента. 


Пример использования:

$eventManager = \Bitrix\Main\EventManager::getInstance();
$eventManager->addEventHandler(
    'luxar.sitemap',
    "OnSitemapGenerationBeforeIblockElement",
    ['LuxarSitemapEventes', 'handlerOnSitemapGenerationBeforeIblockElement']
);

class LuxarSitemapEventes {
    public static function handlerOnSitemapGenerationBeforeIblockElement($event) {
        $arParam = $event->getParameters();

        $sitemapId = $arParam['ID'];
        $arElement = $arParam['FIELDS'];

        if ($sitemapId == 1) {
            /*
             * Модифицируем элемент инфоблока
             */
            $result = new \Bitrix\Main\EventResult(
               \Bitrix\Main\EventResult::SUCCESS,
               $arElement)
            ;
            return $result;
        }
        else {
            /*
             * Убираем элемент из файла sitemap
             */
            $result = new \Bitrix\Main\EventResult(
               \Bitrix\Main\EventResult::ERROR,
            );
            return $result;
        }
    }
}

Событие “OnBeforeUrlGeneration”

Событие “OnBeforeUrlGeneration” вызывается перед добавлением url-элемента в файл sitemap. Этим событием можно изменить содержимое url-элемента, либо исключить его из файла sitemap.

Получает параметры:

FIELDS - Массив с полями url-элемента. 

Возможные ключи массива: url, date, changefreq, priority, files.

Пример использования:

$eventManager = \Bitrix\Main\EventManager::getInstance();
$eventManager->addEventHandler(
    'luxar.sitemap',
    "OnBeforeUrlGeneration",
    ['LuxarSitemapEventes', 'handlerOnBeforeUrlGeneration']
);

class LuxarSitemapEventes {
    public static function handlerOnBeforeUrlGeneration($event) {
        $arParam = $event->getParameters();

        $arUrl = $arParam['FIELDS'];

        if ($arUrl[‘url’] == ‘https://site.ru/#’) {
            /*
             * Модифицируем элемент
             */
            $arUrl[‘url’] = ‘https://site.ru/’;
            $result = new \Bitrix\Main\EventResult(
               \Bitrix\Main\EventResult::SUCCESS,
               $arUrl)
            ;
            return $result;
        }
        if ($arUrl[‘url’] == ‘https://site.ru/personal/’) {
            /*
             * Убираем элемент из файла sitemap
             */
            $result = new \Bitrix\Main\EventResult(
               \Bitrix\Main\EventResult::ERROR,
            );
            return $result;
        }
    }
}

Событие “OnSitemapGenerationFilterIblockElement”

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


Получает параметры:

ID - ID sitemap.

FILTER - Фильтр для дополнительной выборки элементов инфоблока, которые попадут в файл Sitemap.

Возможна отмена генерации sitemap для элементов инфоблока.

Пример использования:

$eventManager = \Bitrix\Main\EventManager::getInstance();
$eventManager->addEventHandler(
    'luxar.sitemap',
    "OnSitemapGenerationFilterIblockElement",
    ['LuxarSitemapEventes', 'handlerOnSitemapGenerationFilterIblockElement']
);

class LuxarSitemapEventes {

    public static function handlerOnSitemapGenerationFilterIblockElement($event) {
        $arParam = $event->getParameters();

        $sitemapId = $arParam['ID'];
        $arFilter = $arParam['FILTER'];

        if ($sitemapId == 1) {
            /*
             * Модифицируем фильтр
             */
            $result = new \Bitrix\Main\EventResult(
               \Bitrix\Main\EventResult::SUCCESS,
               $arFilter)
            ;
            return $result;
        }
        else {
            /*
             * Отменяем генерацию sitemap для элементов инфоблока
             */
            $result = new \Bitrix\Main\EventResult(
               \Bitrix\Main\EventResult::ERROR,
            );
            return $result;
        }
    }
}