~ 4 мин
Создание Sitemap.xml в Next.js с помощью next-sitemap
945
4/25/2023
Узнайте, как использовать next-sitemap для создания sitemap.xml в Next.js и оптимизировать свой сайт для поисковых систем. Следуйте этой лучшей практике SEO и обеспечьте индексацию всех страниц вашего сайта, чтобы увеличить трафик и улучшить его видимость в поисковых результатах.
В прошлый раз я писал, как можно сделать sitemap в приложении на Next.js из файла страницы. Почитать можно тут.
Но для создания файла sitemap.xml в Next.js есть еще более удобный способ - это с помощью сторонней библиотеки next-sitemap. Эта библиотека генерирует sitemap.xml и robots.txt автоматически на основе маршрутов, которые определены в приложении Next.js. Давайте разберемся, как это сделать!
Шаги для создания Sitemap.xml с помощью next-sitemap:
- Установите next-sitemap в свой проект на Next.js, используя команду npm:
npm install next-sitemap
- Создайте файл next-sitemap.config.js в корневой папке проекта, если его еще нет, и добавьте следующий код:
/** @type {import('next-sitemap').IConfig} */ module.exports = { siteUrl: process.env.SITE_URL || 'https://example.ru', generateRobotsTxt: true, // опционально, можно отключить // ...другие опции }
- Добавьте в файл package.json скрипт, который будет выполняться после билда:
{ "build": "next build", "postbuild": "next-sitemap" }
- Запустите ваше Next.js приложение и откройте файл http://localhost:3000/sitemap.xml. Вы должны увидеть сгенерированный файл sitemap.xml со списком роутов всего вашего приложения.
Кроме того, next-sitemap предоставляет ряд опций, которые вы можете использовать, чтобы настроить генерацию sitemap.xml. Например, вы можете настроить приоритеты страниц, время их обновления, и т.д. Подробнее об этом можно узнать из документации библиотеки.
Генерация sitemap.xml (опционально)
Начиная с версии next-sitemap v2.x и выше, по умолчанию в файле public/sitemap.xml будет формироваться карта сайта. Он будет содержать все URL-адреса всех сгенерированных конечных урлов сайта.
Генерацию sitemap сайта можно отключить, установив значение generateIndexSitemap: false в конфигурационном файле next-sitemap.config.js (Это полезно для небольших сайтов / сайтов для хобби, которым не требуется индексная карта сайта) (Пример: no-index-sitemaps).
Разделение большого sitemap.xml на несколько файлов
Если на вашем веб-сайте большое количество страниц, возможно, будет невозможно включить все URL-адреса в один файл sitemap из-за ограничений на размер файла и количество URL-адресов, которые могут быть включены в карту сайта. В этом случае определите свойство sitemapSize в next-sitemap.config.js чтобы разделить большую карту сайта на несколько файлов.
/** @type {import('next-sitemap').IConfig} */ module.exports = { siteUrl: 'https://example.com', generateRobotsTxt: true, sitemapSize: 7000, }
Выше приведена минимальная конфигурация для разделения большой карты сайта. Если количество URL-адресов в карте сайта превышает 7000, next-sitemap создаст карту сайта (например sitemap-0.xml , sitemap-1.xml ) и индексный файл (например sitemap.xml ).
Конфигурационные опции
siteUrl - Базовый URL вашего веб-сайта
changefreq (опционально) - Устанавливает частоту проверки. По умолчанию, ежедневно
priority (опционально) - Устанавливает приоритет сканирования. По умолчанию - 0.7
Взгляните на наш стартап:
Выбирай экскурсии и активности по всему миру
Уже зарегистрировано 0 стран, 0 направлений, 0 экскурсий
Есть интересная идея?
И вы очень хотите ее реализовать, пишите нам и получите подробное коммерческое предложение и быструю реализацию