From ba084fc6a66a7b467045c75c1c64664f3d258238 Mon Sep 17 00:00:00 2001 From: Ivo Valchev Date: Thu, 7 Jan 2021 13:57:39 +0100 Subject: [PATCH] Make sure Other Content works on mobile --- src/Menu/BackendMenuBuilder.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/Menu/BackendMenuBuilder.php b/src/Menu/BackendMenuBuilder.php index 802304207..52b78c2d5 100644 --- a/src/Menu/BackendMenuBuilder.php +++ b/src/Menu/BackendMenuBuilder.php @@ -9,6 +9,7 @@ use Bolt\Repository\ContentRepository; use Bolt\Twig\ContentExtension; use Bolt\Version; +use Cocur\Slugify\Slugify; use Knp\Menu\FactoryInterface; use Knp\Menu\ItemInterface; use Knp\Menu\MenuItem; @@ -329,16 +330,20 @@ private function addContentOthers(MenuItem $menu): void /** @var ContentType[] $contentTypes */ $contentTypes = $this->config->get('contenttypes')->where('show_in_menu', '!==', true); + $slugify = new Slugify(['separator' => '-']); foreach ($contentTypes as $contentType) { $label = $contentType->get('show_in_menu') ?: $t->trans('caption.other_content'); if (! $menu->getChild($label)) { // Add the top level item + + $slug = $slugify->slugify($label); $menu->addChild($label, [ + 'uri' => $this->urlGenerator->generate('bolt_menupage', ['slug' => $slug]), 'extras' => [ 'name' => $label, 'icon' => $contentType->get('icon_many'), - 'slug' => $label, + 'slug' => $slug, ], ]); }