From 4701bd985a4a53e549c73f0e6ded567c8a5cf86b Mon Sep 17 00:00:00 2001 From: Mike Cochrane Date: Thu, 9 Jun 2016 13:55:43 +1200 Subject: [PATCH] Exclude all Redirector templates, not just RedirectorPage Classes that extend RedirectorPage are still included in the sitemap if exclude_redirector_pages is enabled. This change excludes all subclasses as well. --- code/GoogleSitemap.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/code/GoogleSitemap.php b/code/GoogleSitemap.php index b22ee08..f34a18b 100644 --- a/code/GoogleSitemap.php +++ b/code/GoogleSitemap.php @@ -227,7 +227,9 @@ class GoogleSitemap extends Object } if($redirector) { - $instances = $instances->exclude('ClassName', 'RedirectorPage'); + foreach (ClassInfo::subclassesFor('RedirectorPage') as $redirectorClass) { + $instances = $instances->exclude('ClassName', $redirectorClass); + } } } elseif ($class == "GoogleSitemapRoute") { $instances = array_slice(self::$routes, ($page - 1) * $count, $count);