where('slug', $slug)->firstOrFail(); return view('web.pages.show', [ 'page' => $page, 'page_title' => ($page->meta_title ?: $page->title) . ' — Skinbase', 'page_meta_description' => $page->meta_description ?: '', 'page_canonical' => $page->canonical_url, 'page_robots' => 'index,follow', 'breadcrumbs' => collect([ (object) ['name' => $page->title, 'url' => $page->url], ]), ]); } /** * Serve root-level marketing slugs (/about, /help, /contact). * Falls back to 404 if no matching page exists. */ public function marketing(string $slug): View { $page = Page::published()->where('slug', $slug)->firstOrFail(); return view('web.pages.show', [ 'page' => $page, 'page_title' => ($page->meta_title ?: $page->title) . ' — Skinbase', 'page_meta_description' => $page->meta_description ?: '', 'page_canonical' => url('/' . $slug), 'page_robots' => 'index,follow', 'breadcrumbs' => collect([ (object) ['name' => $page->title, 'url' => '/' . $slug], ]), ]); } /** * Legal pages (/legal/terms, /legal/privacy, /legal/cookies). * Looks for page with slug "legal-{section}". */ public function legal(string $section): View { $page = Page::published()->where('slug', 'legal-' . $section)->firstOrFail(); return view('web.pages.show', [ 'page' => $page, 'page_title' => ($page->meta_title ?: $page->title) . ' — Skinbase', 'page_meta_description' => $page->meta_description ?: '', 'page_canonical' => url('/legal/' . $section), 'page_robots' => 'index,follow', 'breadcrumbs' => collect([ (object) ['name' => 'Legal', 'url' => '#'], (object) ['name' => $page->title, 'url' => '/legal/' . $section], ]), ]); } }