Hola Gente, como va?
Estoy intentado modificar la vista de mis productos cuando se entra a una categoría o cuando se realiza una búsqueda.
En mi base de datos tengo cargado los productos:
Por ejemplo:
Name: Lapicera x unidad
Model: 045951899x1
Name: Lapicera x 9 unidades
Model: 045951899x9
Los dos productos son exactamente iguales, solo cambia la cantidad. Y en el código solo cambia el final, x1 o x9 dependiendo la cantidad.
Lo que quiero es agrupar estos casos de la siguiente forma:
Estoy intentado localizar la consulta a la base de datos, para modificara y ver si puedo hacer que agrupe los resultados cuando los primeros 10 números del model son iguales.
Alguien sabe donde se encuentra esta consulta?
Según estuve viendo esta en public function getTotalProducts($data = array()) de catalog/model/catalog/product.php es correcto esto?
Alguna idea de como puedo hacerlo? Desde ya muchas gracias!
Y porque no lo haces con las opciones del producto, ejemplo el producto es el lápiz y las opciones son 1 unidad 9 unidades etc, de ultima si todos tus modelos utilizan el mismo patrón "código_x_unidad" podes concatenar las opciones del producto (unidades) a ese código... se me ocurre ami hacerlo así me parece menos complicado.
Para los resultados del buscador:
catalog/controller/product/search.php
catalog/model/catalog/product.php
No lo he probado pero debería ser por acá:
Por ejemplo al controller del search, cuando llama a la función getProducts($data) al array ese del $data pasale por ejemplo un valor cualquiera, ejemplo:
y en el model (para no romperlo porque la función getProducts la ultiliza el sistema para otras cosas), donde esta el código:
ponele un condicional, por ejemplo:
Vuelvo a repetir, lo estoy pensando no he probado nada de todo eso pero es más o menos por donde deberías ir.
Saludos!
Para los resultados del buscador:
catalog/controller/product/search.php
catalog/model/catalog/product.php
No lo he probado pero debería ser por acá:
Code: Select all
$sql .= " GROUP BY p.product_id";
Code: Select all
'ordenar_modelo' => TRUE;
Code: Select all
$sql .= " GROUP BY p.product_id";
Code: Select all
if ( ($data['ordenar_modelo']) ) {
$sql .= " GROUP BY p.product_id, p.model";
} else {
$sql .= " GROUP BY p.product_id";
}
Saludos!
Gracias Fran por la ayuda nuevamente, voy a ver si me sale agrupar la consulta para poder mostrarla después en el ciclo foreach.cofran wrote:Y porque no lo haces con las opciones del producto, ejemplo el producto es el lápiz y las opciones son 1 unidad 9 unidades etc, de ultima si todos tus modelos utilizan el mismo patrón "código_x_unidad" podes concatenar las opciones del producto (unidades) a ese código... se me ocurre ami hacerlo así me parece menos complicado.
Para los resultados del buscador:
catalog/controller/product/search.php
catalog/model/catalog/product.php
No lo he probado pero debería ser por acá:
Por ejemplo al controller del search, cuando llama a la función getProducts($data) al array ese del $data pasale por ejemplo un valor cualquiera, ejemplo:Code: Select all
$sql .= " GROUP BY p.product_id";
y en el model (para no romperlo porque la función getProducts la ultiliza el sistema para otras cosas), donde esta el código:Code: Select all
'ordenar_modelo' => TRUE;
ponele un condicional, por ejemplo:Code: Select all
$sql .= " GROUP BY p.product_id";
Vuelvo a repetir, lo estoy pensando no he probado nada de todo eso pero es más o menos por donde deberías ir.Code: Select all
if ( ($data['ordenar_modelo']) ) { $sql .= " GROUP BY p.product_id, p.model"; } else { $sql .= " GROUP BY p.product_id"; }
Saludos!
Who is online
Users browsing this forum: No registered users and 8 guests