Miss any of our Open RFC calls?Watch the recordings here! »

bs-builder-sitemap-xml

0.0.2 • Public • Published

builder-sitemap-xml

Plugin for bs-builder system which creates sitemap.xml file

NPM version Coveralls branch Travis David David

Плагин для bs-builder предназначенный для генерации файла sitemap.xml.

GitHub Logo

Установка

Пакет устанавливается как обычная npm зависимость

$ npm install --save bs-builder-sitemap-xml

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

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

var Builder = require('bs-builder-core').Builder
    coreTasks = require('bs-builder-core').tasks,
    SitemapXmlTask = require('bs-sitemap-xml').tasks.BuildSitemapXML,

    dataPath = './data',
    cachePath = './.builder/cache',
    builder;

builder = Builder.init('debug')
    .addTask(coreTasks.MakeDirectory, { path: cachePath })
    .addTask(coreTasks.MakeDirectory, { path: dataPath })
    .addTask(coreTasks.LoadModelFiles)
    .addTask(coreTasks.MergeModels)
    .addTask(coreTasks.SaveModelFile)
    .addTask(coreTasks.AnalyzeModel)
    ...
    ...
    // подключение задачи сборки для построения файла sitemap.xml
    .addTask(SitemapXmlTask, { hosts: { en: 'http://my.site.en' }}
    //
    .addTask(tasks.SaveDataFile);

builder.run();

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

{
    en: 'http://my.site.en', // для английского языка
    fr: 'http://my.site.fr', // для французского языка
    de: 'http://my.site.de' // для немецкого языка
    ...
}

Примечание #1.

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

Примечание #2.

Если для всех языковых версий хост сайта является общим, то вместо объекта значением поля hosts можно передать строку.

Тестирование

Запуск тестов с вычислением покрытия кода тестами с помощью инструмента istanbul:

npm test

Проверка синтаксиса кода с помощью jshint и jscs

npm run codestyle

Особая благодарность за помощь в разработке:

  • Ильченко Николай (http://github.com/tavriaforever)
  • Константинова Гела (http://github.com/gela-d)
  • Гриненко Владимир (http://github.com/tadatuta)
  • Абрамов Андрей (https://github.com/blond)

Разработчик Кузнецов Андрей Серргеевич @tormozz48 Вопросы и предложения присылать по адресу: tormozz48@gmail.com

Install

npm i bs-builder-sitemap-xml

DownloadsWeekly Downloads

4

Version

0.0.2

License

MPL-2.0

Last publish

Collaborators

  • avatar