From 8ee2f1b17cb2b95454e6686d9fe32dbcadcdb9dd Mon Sep 17 00:00:00 2001 From: "David T. Sadler" Date: Sun, 8 Mar 2020 02:19:19 +0000 Subject: Add sitemap --- listeners/GenerateSitemap.php | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 listeners/GenerateSitemap.php (limited to 'listeners/GenerateSitemap.php') diff --git a/listeners/GenerateSitemap.php b/listeners/GenerateSitemap.php new file mode 100644 index 0000000..b7f471e --- /dev/null +++ b/listeners/GenerateSitemap.php @@ -0,0 +1,43 @@ +getConfig('baseUrl'); + + if (! $baseUrl) { + echo("\nTo generate a sitemap.xml file, please specify a 'baseUrl' in config.php.\n\n"); + + return; + } + + $sitemap = new Sitemap($jigsaw->getDestinationPath() . '/sitemap.xml'); + + collect($jigsaw->getOutputPaths()) + ->reject(function ($path) { + return $this->isExcluded($path); + })->each(function ($path) use ($baseUrl, $sitemap) { + $sitemap->addItem(rtrim($baseUrl, '/') . $path, time(), Sitemap::DAILY); + }); + + $sitemap->write(); + } + + public function isExcluded($path) + { + return Str::is($this->exclude, $path); + } +} -- cgit v1.2.3-13-gbd6f