В главном контроллере делаю запрос на вывод категорий в шапку.
class MainController extends Controller
{
    public function index()
    {
        $category = Category::all();
        return view('index', ['category' => $category]);
    }
    
}
При загрузке другого вида, эта переменная уже не попадёт
public function imagesAllCategory($id)
    {
        $images = SubCategory::findOrFail($id);
        return view('category', [
            'images' => $images
             ]);
    }
Можно конечно же добавить продублировать код
public function imagesAllCategory($id)
    {
        
        $category = Category::all();
        
        $images = SubCategory::findOrFail($id);
        return view('category', [
            'images' => $images,
            'category' => $category
             ]);
    }
Но это очень плохо, придётся его дублировать в каждом методе, что бы категории
подгружались в шапку, как от этого избавиться?
Надо что бы переменная category была доступна в каждом виде