{{-- resources/views/pages/home.blade.php --}} @extends('layouts.app') @section('content') {{-- Hero como en la maqueta estática --}} Catálogo de Productos Busca el producto de tu preferencia. Filtrado por categoría y subcategorías (color, talla, género) Selecciona y agrega al carrito Pedido directo por WhatsApp {{-- Contenido principal con sidebar + grid, igual a la maqueta --}} {{-- Sidebar reutilizable --}} @include('zapatera.partials.filters') {{-- Columna de catálogo (grid). Si no pasas $products, mostramos cards demo. --}} {{-- buscador opcional, tipo maqueta --}} @php $demo = [ ['name'=>'Runner Pro','sku'=>'RUN-PRO-001','price'=>39.90,'image'=>null,'stock'=>16], ['name'=>'Urban Flex','sku'=>'URB-FLX-002','price'=>54.90,'image'=>null,'stock'=>13], ['name'=>'Classic Low','sku'=>'CLS-LOW-003','price'=>49.90,'image'=>null,'stock'=>12], ]; $collection = isset($products) ? $products : collect($demo); $hasGestor = request()->filled('g'); @endphp @forelse($collection as $p) @php // soporta ambos formatos: array demo o paginator del controlador $name = is_array($p) ? $p['name'] : ($p['name'] ?? $p['name']); $sku = is_array($p) ? $p['sku'] : ($p['sku'] ?? $p['sku']); $img = is_array($p) ? $p['image'] : ($p['image'] ?? null); $stock = is_array($p) ? $p['stock'] : ($p['stock_total'] ?? 0); $base = is_array($p) ? $p['price'] : ($p['base_price'] ?? 0); $price = is_array($p) ? $p['price'] : ($p['price'] ?? $base); @endphp @if($img) @else @endif {{ $name }} SKU {{ $sku }} · Stock total {{ $stock }} @if($hasGestor) ${{ number_format($base,2) }} @endif ${{ number_format($price,2) }} Pedir por WhatsApp @empty Sin productos para mostrar. @endforelse {{-- paginación si $products es LengthAwarePaginator --}} @if(isset($products) && method_exists($products,'links')) {{ $products->withQueryString()->links() }} @endif {{-- Botón flotante WhatsApp como en maqueta --}} WhatsApp @endsection
Busca el producto de tu preferencia.