products() ->with(['variants.prices.currency', 'media']) ->paginate(12) ->withQueryString() ->through(fn (Product $product) => [ 'name' => $product->translateAttribute('name'), 'price' => $product->variants->first()?->prices->first()?->price->decimal, 'image' => $product->media->first()?->getUrl(), 'href' => route('product.show', ['product' => $product]), ]); return view('category.show', [ 'collection' => $collection, 'products' => $products, ]); } }