gulp-sitemapを使ってsitemap生成を自動化する

gulp-sitemapを使ってsitemap生成を自動化する

やりたいこと

ページが追加される度にsitemap.xmlをいちいち手入れするのは面倒なので自動化したい。

対象サイトの状況

パーツを共通化したかったのでPug+Scssを使っています。
それをgulpを使ってビルドするようになっています。

元から使っているパッケージ(一部)

gulp
gulp-pug

やったこと

gulp-sitemapの導入

ちょうど良さそうなパッケージがあったので利用することにしました。

gulp-sitemap
Generate a search engine friendly sitemap.xml using a Gulp stream

使い方は見ていただいた通りです。

シンプルな機能なので、基本的には困らないと思いますが、コツはhtmlファイルがビルドされてから動作するようにすることです。そうでないと実行のタイミング次第では抜け漏れが出てしまいます。

今回対象の環境では、アウトプット先を一回空にして、その後各種ファイルをビルドするような処理の流れにしていたので、それの末尾にsitemapをビルドする処理を加えました。

exports.default = series(
	cleanDocs,
	parallel(
		buildScripts,
		buildStyles,
		buildHtmls,
		buildSVGs,
		copyFiles
	),
	buildSitemap
);

これにより各種コンテンツが出揃ってからsitemapが生成できます。

楽ちんですね!

こちらからは以上です!