Файл sitemap: Где находится файл sitemap

Файл Sitemap или карта сайта: используем корректно

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

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

Файл sitemap.xml для Гугл – это подсказка, упоминание о том, что именно эти страницы вы считаете самыми качественными, целевыми, о том, что указанные урлы можно демонстрировать пользователю, что они важны для продвижения. Для того, чтобы эта подсказка сработала как нужно, важно соблюдать основные правила использования sitemap. xml.

На что нужно обращать внимание при работе

Избегайте самых распространенных ошибок при работе с sitemap.xml, следуя довольно простым правилам:

  1. Соблюдайте последовательность: не стоит включать страницу в sitemap.xml, если вы собираете закрыть ее от индексации в файле robots.txt или использовать индекс «noindex, follow».
  2. Разделите страницы на служебные, закрытые от поиска, и посадочные, доступные для пользователя, с ключевыми запросами, по которым ваш сайт будут находить в поиске. Все служебные страницы блокируются и не указываются в карте сайта.
  3. Помните, что Гугл при индексации оценивает качество сайта в целом. Однако вам следует дополнительно указать, что среди всех страниц сайта вы считаете действительно отличным, «целевым» контентом, а что не имеет к нему ни малейшего отношения. Соответственно, поисковый робот станет анализировать только те страницы, которые вы выделили как «хорошие». Даже если он и найдет в них недочеты, то скорее отметит сайт как «привлекательный для пользователей».
    Если же робот будет оценивать все страницы, то «служебные» могут проиндексироваться как «некачественный контент», а значит, и общие показатели привлекательности сайта тоже снизятся.
  4. Скройте все ненужные страницы. Если вы упомянули все привлекательные страницы в sitemap.xml, то это еще не является гарантией отсутствия индексации других, неупомянутых страниц. Вам следует тщательно проверить, откуда поступают сигналы для поисковых роботов и закрыть ненужные. Воспользуйтесь командой «site:». Она позволит вам увидеть все проиндексированные страницы. Как правило, самые последние указанные в списке урлы – самые некачественные по содержанию с точки зрения поисковых роботов.

Что использовать для скрытия страниц — noindex или robots.txt?

Для предотвращения индексации страницы используется либо метатег robots, либо файл robots.txt. Однако учитывайте, что блокировка страницы в robots.txt как бы «обнуляет» ее, а вот метатег robots «noindex,follow» позволяет оставить ссылки и передавать ссылочный вес.

Например, отслеживающие скрипты можно заблокировать полностью и ничего не потерять, а вот ссылки на страницы из главного меню следует оставить. Также следует блокировать индексацию служебных страниц через robots.txt, если у вас их слишком много, иначе Googlebot будет тратить слишком много времени на сканирование ненужного. Кроме того, такой подход позволит управлять бюджетом сканирования, если окажется, что он ограничен.

Действительно, краулинговый бюджет нелогично расходовать на индексацию служебных страниц, которая не принесет вам обозримой пользы в виде привлечения новых клиентов через поисковый трафик. Гораздо лучше регулярно индексировать постоянно меняющиеся страницы вроде «блога», «новостей», «каталога» и так далее. Поэтому все такие страницы вносят в файл XML Sitemap, чтобы подсказать Гуглу, каким страницам вы отдаете предпочтение среди всех, что не закрыты от индексации.

Не забывайте, что файл XML Sitemap можно создавать отдельно для разных категорий страниц на сайте. Это позволит выделить группы с проблемами в индексации. Причем карта сайта не должна быть статичной. Ее можно динамически изменять в соответствии с изменениями, происходящими в контенте. Только настройте правила, в соответствии с которыми эти изменения будут происходить.

Итак, будьте последовательными, используйте XML Sitemap как подсказку для поисковых роботов Гугла и не забывайте, что возможно создание динамической версии карты сайта.

Оценок: 643 (средняя 5 из 5)

Файл Sitemap или карта сайта: используем корректно {descr}

  1. Главная
  2. Файл Sitemap или карта сайта: используем корректно

Карта сайта XML

Главная / Редактирование сайта / Как мне настроить сайт? / Настройки SEO / Карта сайта XML

Что такое sitemap.xml

Sitemap.xml – это файл в формате xml, который выполняет функцию карты сайта для поисковых систем.

Файл Sitemap.xml содержит URL-адреса страниц сайта, а также относящиеся к ним данные, такие как: время их последнего обновления, частоту их обновления и важность относительно других страниц сайта. Вся эта информация способствует быстрой и эффективной индексации страниц сайта поисковыми системами.

Подключение файла sitemap.xml особенно рекомендуется для сайтов с большим количеством страниц (более 100).

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

Подключение

Зайдите в систему управления сайтом. Раскройте меню «Настройки» и выберите «Карты сайта XML».

Шаг 2

Откроется страница «Карты сайта XML».

В ней отображается текущее состояние файла (Подключено, Отключено).

Шаг 3

Для подключения карты сайта XML нажмите на ссылку «Подключить». Карта сайта сгенерируется в течение суток (до этого будет отображаться надпись “»Карты сайта XML еще не генерировались»).

Шаг 4

После того как карта сайта будет сгенерирована:

  • Под статусом «(подключено) Отключить» отображается строка со ссылкой на сгенерированную карту, датой последнего обновления, размером файла и кнопой «Загрузить».
  • С помощью ссылки «Загрузить» можно загрузить данный файл на компьютер или открыть его в окне браузера.
  • С помощью ссылки «Добавить» можно загрузить вместо автоматически сгенерированного файла карты сайта свой, созданный самостоятельно. Обратите внимание! Данная ссылка доступна только при наличии расширенных прав доступа.

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

Карта сайта для иллюстраций

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

Обратите внимание!

  • Загруженная вручную карта будет обладать большим приоритетом по сравнению с автоматически генерируемой.
  • Загруженная вручную карта будет использоваться вне зависимости от того, включена ли автоматическая генерация.
  • При удалении загруженной вручную карты на сайте вместо нее будет использоваться автоматически сгенерированная (если ее генерация включена).
  • Допустима загрузка только файлов в формате XML.
  • В карту сайта не попадают страницы, закрытые для индексации.

Была ли статья вам полезна?

Да

Нет 

Укажите, пожалуйста, почему?

  • Рекомендации не помогли
  • Нет ответа на мой вопрос
  • Содержание статьи не соответствует заголовку
  • Другая причина

Комментарий

Форматы Sitemap

Существуют различные типы файлов Sitemap, каждый из которых предназначен для своего назначения. История Sitemap восходит к 2000-м годам, когда Google, гигант поисковых систем, официально запустил его в 2005 году. Год спустя другие поисковые системы, такие как Yahoo и Bing, приняли общий протокол карты сайта, вступив в уникальный брак, потому что очень мало конкурентов. запускать совместные проекты, такие как карты сайта. Карты сайта предназначены для использования поисковыми системами, а также пользователями Интернета. Когда вы создаете карту сайта, вы можете выбирать из различных форматов, хотя большинство генераторов карт сайта поддерживают два основных формата; HTML-карты сайта и XML-карты сайта.

Базовый XML-файл Sitemap принимает любое имя, которое вы ему даете, и его не обязательно хранить в корневом каталоге веб-сайта (хотя в идеале хранить его там). Файл должен быть текстовым файлом UTF-8 (закодированным), что означает, что URL-адреса с некоторыми специальными символами должны использовать экранирование объектов, чтобы URL-адреса в карте сайта правильно сканировались поисковыми системами. Карты сайта XML можно хранить в несжатом виде, отправлять в виде файлов .XML или сжимать в формате gzip, а затем отправлять в виде файлов .GZ.

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

XML-файлы Sitemap имеют ограничения по размеру: они не могут превышать 10 МБ и могут содержать не более 50 000 записей URL-адресов. Поскольку это ограничение размера является неблагоприятным для корпоративных веб-сайтов, файл индекса Sitemap удваивается как усовершенствование протокола Sitemap XML, что позволяет файлу индекса Sitemap ссылаться на до 50 000 отдельных файлов Sitemap, причем каждый из этих файлов содержит до 50 000 ссылок, что в сумме составляет более более 2,5 миллиардов ссылок. Поэтому создание нескольких карт сайта настоятельно рекомендуется для сайтов с тысячами ссылок.

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

Одним из самых выдающихся аспектов HTML-карты сайта является то, что она ссылается на весь опубликованный контент на вашем сайте. Если, например, у вас есть большой новостной сайт, на страницах которого перечислены только 24-48 часов новых статей, прежде чем они будут удалены из текущих страниц на веб-сайте, XML Sitemap предоставляет эти ссылки для сканирования, но все же это не очень хорошо. довольно. В этом случае, когда вы используете опцию архивирования контента, вы предоставляете более одной ссылки на работающем сайте на все опубликованные страницы. Это позволяет читателям легко находить свои любимые истории в будущем. Это также важно, когда вы создаете инвентарь контента для сайта, потому что вы по-прежнему можете получить доступ к своим старым историям в одном месте и улучшить их.

RSS-каналы

Файлы Sitemap также могут поставляться в других форматах, таких как каналы Atom или RSS-каналы. Если на вашем сайте ежедневно публикуется несколько новых страниц, рекомендуется найти способ правильно представить и заархивировать их на будущее. RSS-каналы вводят индекс свежести поисковых систем, поскольку роботы поисковых систем чаще читают их ежедневно. Как только вы опубликуете свои страницы, поисковые системы немедленно просканируют информацию на этих страницах.

Советы по созданию RSS-каналов для вашего сайта

  • Убедитесь, что он содержит менее 500 URL-адресов или не более 7 ссылок на опубликованный контент за последние 7 дней. Поскольку это обновление свежести, вы должны держать его свежим и чистым.
  • Убедитесь, что ваша ссылка на RSS-канал остается постоянной и не меняется время от времени.

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

Если на вашем веб-сайте публикуется новый и оригинальный видеоконтент, поисковые системы должны быть проинформированы соответствующим образом. Видео чрезвычайно сложно индексировать, поэтому вы должны включать точные метаданные в каждый публикуемый вами элемент. Это делает медиа релевантным поисковым запросам. Перед созданием файла Sitemap для видео важно убедиться, что вы внимательно ознакомились со спецификациями протокола. Создав карту сайта, следуйте инструкциям и отправьте ее в инструменты поисковой системы для веб-мастеров.

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

Вам следует создать файл Sitemap для изображений, если на вашем веб-сайте много изображений (особенно оригинального контента) и вы хотите, чтобы все или почти все изображения на вашем сайте были проиндексированы. Создавая карту сайта для изображений, вы упрощаете для поисковых систем определение наиболее релевантных и важных изображений на сайте, которые будут представлены при поисковых запросах.

Для сайтов с небольшим количеством страниц тип файла с расширением .txt является самым простым форматом текстового файла для использования при создании Sitemap. С помощью Блокнота и других простых текстовых редакторов вы можете легко создать текстовую карту сайта. Вот общие рекомендации, которым нужно следовать, когда вы хотите создать свой текстовый файл Sitemap:

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

Кроме того, каждая поисковая система может ввести другие правила, в том числе:

  • Количество URL-адресов в одном файле не должно превышать 50 000. Если на вашем сайте более 50 000 URL-адресов, вам следует использовать несколько текстовых файлов.
  • Размер текстового файла не должен превышать 10 МБ (10 485 760 байт).
  • Текстовый файл должен использовать кодировку UTF-8, поэтому вы должны сохранить файл в формате UTF-8.

В зависимости от размера и характера вашего веб-сайта вы не можете позволить себе управлять сайтом без по крайней мере двух из перечисленных выше форматов карты сайта. Другие форматы могут быть необязательными, но карты сайта HTML и XML настоятельно рекомендуются. Используйте генератор карт сайта, такой как DYNO Mapper, чтобы быстро создавать карты сайта по вашему выбору.

следующая карта сайта — npm

Содержание

  • Начало работы
    • Установка
    • Создать файл конфигурации
    • Создание карт сайта
  • Индекс карты сайта
  • Разделение большой карты сайта на несколько файлов
  • Опции конфигурации
  • Пользовательская функция преобразования
  • Пример полной конфигурации
  • Создание динамических/серверных карт сайта
  • Машинописный текст JSDoc

Начало работы

Установка

 пряжа добавить следующую карту сайта 

Создать файл конфигурации

следующая карта сайта требуется базовый файл конфигурации ( next-sitemap.config.js ) в корне вашего проекта

3

next-sitemap по умолчанию загрузит переменные среды из файлов .env .

 /** @type {import('next-sitemap').IConfig} */
модуль. экспорт = {
  siteUrl: process.env.SITE_URL || 'https://example.com',
  generateRobotsTxt: true, // (необязательно)
  // ...другие опции
} 

Создание карты сайта

Добавить следующую карту сайта в качестве сценария после сборки

 {
  "сборка": "следующая сборка",
  "postbuild": "следующая карта сайта"
} 

Вы также можете использовать пользовательский файл конфигурации вместо next-sitemap.config.js . Просто передайте --config .js для сборки команды (пример: custom-config-file)

 {
  "сборка": "следующая сборка",
  "postbuild": "следующая карта сайта --config awesome.config.js"
} 

Индексировать карты сайта (необязательно)

📣 Начиная с next-sitemap v2.x, sitemap.xml будет Index Sitemap. Он будет содержать URL-адреса всех других сгенерированных конечных точек карты сайта.

Генерацию индексной карты сайта можно отключить, установив generateIndexSitemap: false в файле конфигурации следующей карты сайта. (Это полезно для небольших/любительских сайтов, которым не требуется индексная карта сайта) (Пример: no-index-sitemaps)

Разделение большой карты сайта на несколько файлов

Определите sitemapSize свойство в next-sitemap.config.js для разделения большой карты сайта на несколько файлов.

 /** @type {import('next-sitemap').IConfig} */
модуль.экспорт = {
  URL-адрес сайта: «https://example.com»,
  generateRobotsTxt: правда,
  карта сайтаРазмер: 7000,
} 

Выше приведена минимальная конфигурация для разделения большой карты сайта. Когда количество URL-адресов в карте сайта превышает 7000, следующая карта сайта создаст файлы карты сайта (например, sitemap-0.xml, sitemap-1.xml) и индекса (например, sitemap.xml).

Опции конфигурации

.
свойство описание тип
URL сайта Базовый URL вашего сайта строка
частота смены (дополнительно) Изменить частоту. По умолчанию ежедневно строка
приоритет (опционально) Приоритет. По умолчанию 0,7 номер
sitemapBaseFileName (необязательно) Имя созданного файла карты сайта перед расширением файла. По умолчанию "карта сайта" строка
альтернативные ссылки (дополнительно) Обозначить многоязычную поддержку уникальным URL-адресом. По умолчанию [] Альтернативная ссылка[]
Размер карты сайта (необязательно) Разделите большую карту сайта на несколько файлов, указав размер карты сайта. По умолчанию 5000 номер
autoLastmod (дополнительно) Добавить свойство . По умолчанию правда правда
исключить (опционально) Массив из относительных путей (поддерживается шаблон с подстановочными знаками) для исключения из списка sitemap. xml или sitemap-*.xml . например: ['/page-0', '/page-*', '/private/*'] .
Помимо этой опции next-sitemap также предлагает пользовательскую параметр преобразования , который можно использовать для исключения URL-адресов, соответствующих определенным шаблонам
строка[]
исходный каталог (необязательно) каталог сборки next.js. По умолчанию .следующий строка
outDir (опционально) Все сгенерированные файлы будут экспортированы в этот каталог. По умолчанию общедоступный строка
преобразование (дополнительно) Функция преобразования, которая работает для каждого относительного пути в карте сайта. Возврат нулевого значения из функции преобразования приведет к исключению этого конкретного пути из сгенерированного списка карты сайта. асинхронная функция
дополнительные пути (необязательно) Асинхронная функция, которая возвращает список дополнительных путей для добавления в сгенерированный список карты сайта. асинхронная функция
generateIndexSitemap Создание карт сайта индекса. По умолчанию правда логическое значение
generateRobotsTxt (необязательно) Создайте файл robots.txt и перечислите сгенерированные карты сайта. По умолчанию ложь логическое значение
robotsTxtOptions.transformRobotsTxt (необязательно) Пользовательская функция преобразования robots.txt. (Пример: custom-robots-txt-transformer)

По умолчанию: async(config, robotsTxt)=> robotsTxt

асинхронная функция
robotsTxtOptions.policies (необязательно) Политики для создания robots. txt .

По умолчанию:
[{userAgent: '*', разрешить: '/' }]

IRobotPolicy[]
robotsTxtOptions.additionalSitemaps (необязательно) Параметры для добавления дополнительных карт сайта в robots.txt запись хоста строка[]
robotsTxtOptions.includeNonIndexSitemaps (необязательно) Начиная с версии 2.4x, сгенерированный файл robots.txt будет содержать только URL-адрес indexmap и пользовательские конечные точки из robotsTxtOptions.additionalSitemaps .

Это необходимо для предотвращения дублирования отправки URL (один раз через index-sitemap -> sitemap-url и один раз через robots.txt -> HOST)

Установите этот параметр true , чтобы добавить все сгенерированные конечные точки карты сайта в robots.txt

По умолчанию ложь (рекомендуется)

логическое значение

Пользовательская функция преобразования

Пользовательское преобразование предоставляет метод расширения для добавления, удаления или исключения пути или свойств из набора URL-адресов. Функция преобразования запускает для каждого относительного пути в карте сайта. И используйте объект key : value для добавления свойств в XML.

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

 /** @type {import('next-sitemap').IConfig} */
модуль.экспорт = {
  преобразование: асинхронное (конфигурация, путь) => {
    // пользовательская функция для игнорирования пути
    если (пользовательская функция игнорирования (путь)) {
      вернуть ноль
    }
    // создаем только changefreq вместе с путем
    // возврат частичных свойств приведет к генерации поля XML только с возвращаемыми значениями.
    если (customLimitedField(путь)) {
      // Это возвращает `path` и `changefreq`. Следовательно, это приведет к генерации поля XML только со свойствами `path` и `changefreq`.
      возвращаться {
        loc: путь, // => это будет экспортировано как http(s):// siteUrl>/
        changefreq: «еженедельно»,
      }
    }
    // Использовать преобразование по умолчанию для всех остальных случаев
    возвращаться {
      loc: путь, // => это будет экспортировано как http(s):///
      частота изменения: config.changefreq,
      приоритет: config.priority,
      последний мод: config.autoLastmod ? новая дата().toISOString() : не определено,
      альтернативные ссылки: config.alternateRefs ?? [],
    }
  },
} 

Функция дополнительных путей

AdditionalPaths эта функция может быть полезна, если у вас большой список страниц, но вы не хотите отображать их все и использовать резерв: true. Результат выполнения этой функции будет добавлен в общий список путей и обработан с sitemapSize . Вы можете добавлять динамические пути, но в отличие от AdditionalSitemap , вам не нужно разбивать список путей на разные файлы в случае, если путей для одного файла много.

Если ваша функция возвращает уже существующий путь, то он просто обновится, дублирования не произойдет.

 /** @type {import('next-sitemap').IConfig} */
модуль.экспорт = {
  дополнительные пути: асинхронный (конфиг) => {
    постоянный результат = []
    // только требуемое значение
    result.push({место: '/дополнительная-страница-1' })
    // все возможные значения
    результат.push({
      местонахождение: '/дополнительная-страница-2',
      changefreq: «ежегодно»,
      приоритет: 0,7,
      lastmod: новая дата().toISOString(),
      // действует только на '/additional-page-2'
      альтернативные ссылки: [
        {
          href: 'https://es.example.com',
          hreflang: 'эс',
        },
        {
          href: 'https://fr.example.com',
          hreflang: 'фр',
        },
      ],
    })
    // используем преобразование из текущей конфигурации
    result.push(ожидание config.transform(config, '/дополнительная-страница-3'))
    вернуть результат
  },
} 

Пример полной конфигурации

Вот пример next-sitemap.config.js конфигурация со всеми параметрами

 /** @type {import('next-sitemap'). IConfig} */
модуль.экспорт = {
  URL-адрес сайта: «https://example.com»,
  changefreq: «ежедневно»,
  приоритет: 0,7,
  карта сайтаРазмер: 5000,
  generateRobotsTxt: правда,
  исключить: ['/защищенная-страница', '/крутая/секретная-страница'],
  альтернативные ссылки: [
    {
      href: 'https://es.example.com',
      hreflang: 'эс',
    },
    {
      href: 'https://fr.example.com',
      hreflang: 'фр',
    },
  ],
  // Функция преобразования по умолчанию
  преобразование: асинхронное (конфигурация, путь) => {
    возвращаться {
      loc: путь, // => это будет экспортировано как http(s):///
      частота изменения: config.changefreq,
      приоритет: config.priority,
      последний мод: config.autoLastmod ? новая дата().toISOString() : не определено,
      альтернативные ссылки: config.alternateRefs ?? [],
    }
  },
  дополнительные пути: асинхронный (конфиг) => [
    ожидайте config.transform(config, '/дополнительная-страница'),
  ],
  robotsTxtOptions: {
    политики: [
      {
        пользовательский агент: '*',
        позволять: '/',
      },
      {
        userAgent: 'тест-бот',
        разрешить: ['/путь', '/путь-2'],
      },
      {
        userAgent: 'черный список-бот',
        запретить: ['/sub-path-1', '/path-2'],
      },
    ],
    дополнительные файлы Sitemap: [
      'https://example. com/my-custom-sitemap-1.xml',
      'https://example.com/my-custom-sitemap-2.xml',
      'https://example.com/my-custom-sitemap-3.xml',
    ],
  },
} 

Приведенная выше конфигурация будет генерировать карты сайта на основе вашего проекта и файла robots.txt , подобного этому.

 # *
Пользовательский агент: *
Позволять: /
# тест-бот
Агент пользователя: test-bot
Разрешить: /путь
Разрешить: /путь-2
# бот из черного списка
Агент пользователя: бот из черного списка
Запретить: /подпуть-1
Запретить: /путь-2
# Хозяин
Хост: https://example.com
# Файлы Sitemap
Карта сайта: https://example.com/sitemap.xml # Индексировать карту сайта
Карта сайта: https://example.com/my-custom-sitemap-1.xml
Карта сайта: https://example.com/my-custom-sitemap-2.xml
Карта сайта: https://example.com/my-custom-sitemap-3.xml 

Генерация динамических/серверных карт сайта

next-sitemap теперь предоставляет два API для создания серверных карт сайта. Это поможет динамически генерировать index-sitemap (s) и sitemap (s) путем получения данных из CMS или пользовательского источника.

  • getServerSideSitemapIndex : Создает индексные карты сайта на основе предоставленных URL-адресов и возвращает ответ application/xml .

  • getServerSideSitemap : Генерирует карту сайта на основе всего поля и возвращает ответ application/xml .

Индексные карты сайта на стороне сервера (getServerSideSitemapIndex)

Вот пример сценария для создания индексной карты сайта на стороне сервера. Создайте страницу pages/server-sitemap-index.xml/index.tsx и добавьте следующий контент.

 // страницы/server-sitemap-index.xml/index.tsx
импортировать {getServerSideSitemapIndex} из 'следующей карты сайта'
импортировать { GetServerSideProps } из "следующего"
экспортировать константу getServerSideProps: GetServerSideProps = async (ctx) => {
  // Метод получения URL-адресов из cms
  // const urls = await fetch('https//example.com/api')
  вернуть getServerSideSitemapIndex (ctx, [
    'https://example. com/path-1.xml',
    'https://example.com/path-2.xml',
  ])
}
// Экспорт по умолчанию для предотвращения ошибок next.js
функция экспорта по умолчанию SitemapIndex() {} 

Теперь next.js обслуживает динамическую карту сайта с http://localhost:3000/server-sitemap-index.xml .

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

 // следующий-sitemap.config.js
/** @type {import('next-sitemap').IConfig} */
модуль.экспорт = {
  URL-адрес сайта: «https://example.com»,
  generateRobotsTxt: правда,
  exclude: ['/server-sitemap-index.xml'], // <= исключить здесь
  robotsTxtOptions: {
    дополнительные файлы Sitemap: [
      'https://example.com/server-sitemap-index.xml', // <==== Добавить сюда
    ],
  },
} 

Таким образом, next-sitemap будет управлять картами сайта для всех ваших статических страниц, а ваша динамическая index-sitemap будет указана в файле robots. txt.

карта сайта на стороне сервера (getServerSideSitemap)

Вот пример сценария для создания карты сайта на стороне сервера. Создайте страницу pages/server-sitemap.xml/index.tsx и добавьте следующий контент.

 // страницы/server-sitemap.xml/index.tsx
импортировать {getServerSideSitemap} из 'next-sitemap'
импортировать { GetServerSideProps } из "следующего"
экспортировать константу getServerSideProps: GetServerSideProps = async (ctx) => {
 // Метод получения URL-адресов из cms
 // const urls = await fetch('https//example.com/api')
 постоянные поля = [
 {
 loc: 'https://example.com', // Абсолютный URL
 lastmod: новая дата().toISOString(),
 // изменение частоты
 // приоритет
 },
 {
 loc: 'https://example.com/dynamic-path-2', // Абсолютный URL
 lastmod: новая дата().toISOString(),
 // изменение частоты
 // приоритет
 },
 ]
 вернуть getServerSideSitemap (ctx, поля)
}
// Экспорт по умолчанию для предотвращения ошибок next.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *