La tienda de LUVEN (Documentation Index
Fetch the complete documentation index at: https://mintlify.com/LVHJ-8/Proyecto_mecanica/llms.txt
Use this file to discover all available pages before exploring further.
Frontend/productos.php) centraliza todo el inventario de repuestos y accesorios automotrices disponibles para su compra. El catálogo está construido sobre consultas dinámicas a la base de datos, lo que significa que los productos mostrados siempre reflejan el stock y los precios actuales gestionados desde el panel de administración. Los visitantes pueden explorar el catálogo libremente, pero deben iniciar sesión para agregar artículos al carrito.
URL de acceso
Parámetros de filtrado
La tienda acepta tres parámetros GET que pueden combinarse libremente para refinar los resultados:Texto libre que se busca en el
nombre y la descripcion de los productos usando LIKE. Ejemplo: ?buscar=aceite.ID numérico de la categoría a filtrar, proveniente de la tabla
categorias. Ejemplo: ?categoria_id=3.Slug de la marca de vehículo (ej.
toyota, honda). Filtra los productos cuyo nombre o descripcion contienen la cadena del slug. Ejemplo: ?marca=toyota.Ejemplos de URL
| Caso | URL |
|---|---|
| Ver todos los productos | Frontend/productos.php |
| Por categoría | Frontend/productos.php?categoria_id=3 |
| Por marca | Frontend/productos.php?marca=toyota |
| Búsqueda de texto | Frontend/productos.php?buscar=aceite |
| Búsqueda + categoría | Frontend/productos.php?buscar=aceite&categoria_id=2 |
| Marca + categoría | Frontend/productos.php?marca=toyota&categoria_id=3 |
Consulta SQL de productos
El controlador construye la consulta dinámicamente según los filtros activos. Solo se devuelven productos conactivo = 1. Los resultados se ordenan por stock ascendente (los de menor stock aparecen primero) y por ID descendente como criterio secundario:
Frontend/productos.php
Estructura visual de la tienda
La página tiene tres secciones de navegación de productos:1. Buscador superior
Un campo de búsqueda de texto libre con un selector de categoría integrado. Al enviarse, recarga la página con los parámetrosbuscar y/o categoria_id en la URL.
2. Círculos de marcas de vehículo
Debajo del buscador, se muestra una fila de círculos con el logo de cada marca registrada en la tablamarcas. Al hacer clic en un círculo, la URL cambia a:
marca-activa. El valor {slug_de_la_marca} proviene de la columna slug de la tabla marcas.
3. Barra lateral de categorías + cuadrícula de productos
El layout de dos columnas muestra:- Columna izquierda: listado de categorías como enlaces rápidos. Al hacer clic en una categoría, se agrega
?categoria_id=Xa la URL sin perder otros filtros activos. - Columna derecha: cuadrícula con las tarjetas de productos filtrados.
Tarjeta de producto
Cada producto en la cuadrícula muestra:| Campo | Descripción |
|---|---|
| Imagen | Cargada desde assets/img/productos/{imagen} |
| Nombre | Campo nombre de la tabla productos |
| Descripción | Campo descripcion (fallback: "Sin especificaciones técnicas adicionales.") |
| Precio | Formato S/. X.XX con number_format($precio, 2) |
| Badge de stock | "¡Pocas Unidades!" cuando stock <= 3 && stock > 0 |
| Botón de detalle | Enlace a detalle_producto.php?id={id} |
Badge de stock bajo
El badge de alerta aparece superpuesto sobre la imagen del producto cuando las unidades disponibles son tres o menos (y mayores que cero):Frontend/productos.php
Página de detalle por marca de vehículo
Al hacer clic en un círculo de marca, se navega aFrontend/marca_detalle.php. Esta página muestra primero los modelos de vehículo asociados a la marca y luego los repuestos disponibles para esa marca.
URL base por marca:
Identificador único de la marca en la columna
slug de la tabla marcas. Ejemplo: toyota, honda, nissan.Nombre del modelo de vehículo para sub-filtrar los repuestos. Ejemplo:
Corolla, Civic. Opcional: si se omite, se muestran todos los repuestos de la marca.marca_id y opcionalmente por modelo_vehiculo:
Frontend/marca_detalle.php