'Home', 'url' => route('front.home')], ['name' => 'Latest News', 'url' => null], // or you can set a route for Latest News if there's a specific one ]); $title = 'Latest News from EchoScoop'; SEOTools::metatags(); SEOTools::twitter(); SEOTools::opengraph(); SEOTools::jsonLd(); SEOTools::setTitle($title, false); $posts = Post::where('status', 'publish')->orderBy('published_at', 'desc')->simplePaginate(10) ?? collect(); // breadcrumb json ld $listItems = []; foreach ($breadcrumbs as $index => $breadcrumb) { $listItems[] = [ 'name' => $breadcrumb['name'], 'url' => $breadcrumb['url'], ]; } $breadcrumb_context = Context::create('breadcrumb_list', [ 'itemListElement' => $listItems, ]); return view('front.post_list', compact('posts', 'breadcrumbs', 'breadcrumb_context')); } public function category(Request $request, $category_slug) { // Fetch the category by slug $category = Category::where('slug', $category_slug)->first(); // Check if the category exists if (! $category) { abort(404, 'Category not found'); } // Breadcrumb logic $breadcrumbs = collect([['name' => 'Home', 'url' => route('front.home')]]); foreach ($category->ancestors as $ancestor) { $breadcrumbs->push(['name' => $ancestor->name, 'url' => route('front.category', $ancestor->slug)]); } $breadcrumbs->push(['name' => $category->name, 'url' => route('front.category', $category->slug)]); // Get the IDs of the category and its descendants $categoryIds = $category->descendants->pluck('id')->push($category->id); // Get the posts associated with these category IDs $postIds = PostCategory::whereIn('category_id', $categoryIds)->pluck('post_id'); $posts = Post::whereIn('id', $postIds)->where('status', 'publish')->orderBy('published_at', 'desc')->simplePaginate(10); $title = $category->name.' News from EchoScoop'; SEOTools::metatags(); SEOTools::twitter(); SEOTools::opengraph(); SEOTools::setTitle($title, false); SEOTools::jsonLd(); // breadcrumb json ld $listItems = []; foreach ($breadcrumbs as $index => $breadcrumb) { $listItems[] = [ 'name' => $breadcrumb['name'], 'url' => $breadcrumb['url'], ]; } $breadcrumb_context = Context::create('breadcrumb_list', [ 'itemListElement' => $listItems, ]); return view('front.post_list', compact('category', 'posts', 'breadcrumbs', 'breadcrumb_context')); } }