From ee131e5bac6e071c2370770c4f0acbf3c4bfbc8e Mon Sep 17 00:00:00 2001 From: Bob den Otter Date: Mon, 27 Apr 2020 15:17:36 +0200 Subject: [PATCH] Better `isHomepage` detection for singletons --- src/Twig/ContentExtension.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Twig/ContentExtension.php b/src/Twig/ContentExtension.php index c6ff26102..11695b33b 100644 --- a/src/Twig/ContentExtension.php +++ b/src/Twig/ContentExtension.php @@ -738,11 +738,13 @@ private function isSpecialpage(Content $content, string $type): bool foreach ($configSetting as $item) { $item = explode('/', $item); - if (empty($item[1])) { + // Discard candidate if contentTypes don't match + if ($item[0] !== $content->getContentTypeSingularSlug() && $item[0] !== $content->getContentTypeSlug()) { continue; } - if (($item[0] === $content->getContentTypeSingularSlug() || $item[0] === $content->getContentTypeSlug()) && + // Success if we either have no id/slug for a Singleton, or if the id/slug matches + if ((empty($item[1]) && $content->getDefinition()->get('singleton')) || ($item[1] === $content->getSlug() || $item[1] === (string) $content->getId())) { return true; }