Jump to content

Mensaje de agotado por culpa de la combinación por defecto


Recommended Posts

Pues eso.

 

Que tengo muchos artíxulos con diferentes combinaciones de atributos, y cuando no hay stock de la combinación por defecto en la portada del producto aparece como "Producto agotado" cuando no es así, quedan unidades de ese artículo sólo que en otras combinaciones de atributos.

 

He estado buscando en el foro español y en el inglés antes de poner este tema pero no he hallado la solución.

En el foro inglés está el mismo tema pero acaba diciendo que el problema "se acabará" con la versión 1.4, lo cuál no es cierto porque yo tengo la 1.4.1 y continuo teniéndolo.

 

¿Alguien me puede decir cómo solucionarlo?

 

Muchas gracias

Link to comment
Share on other sites

  • 5 weeks later...

Lo que quiero es que lo marque pero una vez que entras en el artículo y seleccionas los atributos.

El problema ahora es que en la portada del producto aparece como agotado y ya la gente ni siquiera entra a mirar si está disponible el artículo con otros atributos.

 

No sé si me explico. Imagínate que son tallas (que no es así pero es lo mismo). Prestashop me obliga a seleccionar una talla por defecto, supongamos que elijo la talla M.

Si se acaban los artículos de la talla M, en la portada del producto aparece como artículo agotado, cuando a lo mejor quedan tallas L,S,XL, etc...

 

¿No se puede indicar que en la portada diga que hay stock siempre y cuando haya algún artículo sea de la talla que sea?

  • Like 2
Link to comment
Share on other sites

Lo que quiero es que lo marque pero una vez que entras en el artículo y seleccionas los atributos.

El problema ahora es que en la portada del producto aparece como agotado y ya la gente ni siquiera entra a mirar si está disponible el artículo con otros atributos.

 

No sé si me explico. Imagínate que son tallas (que no es así pero es lo mismo). Prestashop me obliga a seleccionar una talla por defecto, supongamos que elijo la talla M.

Si se acaban los artículos de la talla M, en la portada del producto aparece como artículo agotado, cuando a lo mejor quedan tallas L,S,XL, etc...

 

¿No se puede indicar que en la portada diga que hay stock siempre y cuando haya algún artículo sea de la talla que sea?

 

+1

Link to comment
Share on other sites

  • 9 months later...

y que ocurre cuando no hay combinaciones y tiene stock pero aparece agotado?? a mi ademas me ha cambiado el precio de al menos un producto, dejo el link

 

http://maweeds.com/category.php?id_category=47

 

como digo me ha cambiado un precio, el del 3er producto, la white dwarf, aparece como 74€ y agotado, pero al entrar en el producto el precio es de 40€ y el producto esta disponible, no entiendo que pasa. por favor ayuda

Link to comment
Share on other sites

  • 1 month later...
  • 3 weeks later...

Este problema también me ha traído de cabeza. La verdad es que no encuentro razón a que tenga que existir una "combinación predeterminada", porque lo que es en el caso de mi tienda para lo único que vale es para que, como dice Zoser, al agotarse su stock aparezca el producto como "Agotado" en la página de la categoría, y que el cliente ni se moleste en entrar a la página del producto a ver si existe stock de otras tallas que no sea la predeterminada.

 

Yo he encontrado la solución de hacer que en mi tienda ninguna talla quede como "predeterminada", de modo que mientras quede stock de alguna de las tallas no va a aparecer la imagen de "Producto agotado" en la página de la categoría.

 

Para ello he cambiado estas cosas en el archivo Product.php, de la carpeta CLASSES.

 

1.- En la línea 532:

 

public static function updateDefaultAttribute($id_product)

{

$id_product_attribute = self::getDefaultAttribute($id_product);

Db::getInstance()->Execute('UPDATE '._DB_PREFIX_.'product SET cache_default_attribute = '.(int)($id_product_attribute).' WHERE id_product = '.(int)($id_product).' LIMIT 1');

}

 

He eliminado el código en rojo.

 

2.- En la línea 1013:

 

public function setDefaultAttribute($id_product_attribute)

{

return Db::getInstance()->Execute('

UPDATE `'._DB_PREFIX_.'product_attribute`

SET `default_on` = 1

WHERE `id_product` = '.(int)$this->id.'

AND `id_product_attribute` = '.(int)$id_product_attribute) &&

Db::getInstance()->Execute('

UPDATE `'._DB_PREFIX_.'product`

SET `cache_default_attribute` = '.(int)$id_product_attribute.'

WHERE `id_product` = '.(int)$this->id.' LIMIT 1');

}

 

Lo he cambiado por:

 

public function setDefaultAttribute($id_product_attribute)

{

return Db::getInstance()->Execute('

UPDATE `'._DB_PREFIX_.'product_attribute`

SET `default_on` = 0

WHERE `id_product` = '.(int)$this->id.'

AND `id_product_attribute` = '.(int)$id_product_attribute);

}

 

 

 

3.- En la línea 2176:

 

public function checkDefaultAttributes()

{

$row = Db::getInstance()->getRow('

SELECT id_product

FROM `'._DB_PREFIX_.'product_attribute`

WHERE `default_on` = 1 AND `id_product` = '.(int)($this->id));

if ($row)

return true;

$mini = Db::getInstance()->getRow('

SELECT MIN(pa.id_product_attribute) as `id_attr`

FROM `'._DB_PREFIX_.'product_attribute` pa

WHERE `id_product` = '.(int)($this->id));

if (!$mini)

return false;

if (!Db::getInstance()->Execute('

UPDATE `'._DB_PREFIX_.'product_attribute`

SET `default_on` = 1

WHERE `id_product_attribute` = '.(int)($mini['id_attr'])))

return false;

return true;

}

 

He eliminado el código en rojo.

 

Espero que os sirva porque el tema de las combinaciones predeterminadas es un verdadero coñazo, sobre todo por lo que dice laurapessoa.

 

Olvidaba comentar que estoy utilizando la versión 1.4.8.2 de Prestashop. No sé si esto servirá para la 1.5. Saludos.

Edited by ccb78 (see edit history)
Link to comment
Share on other sites

¿Lo habéis probado? ¡Espero que haya funcionado! Olvidaba decir que no funciona para los productos que ya tuvieran las tallas (o cualquier otro tipo de combinación) establecidas antes de los cambios, así que para comprobarlo hay que crear un artículo nuevo y meterle las combinaciones después de haber hecho los cambios en Product.php.

Link to comment
Share on other sites

  • 7 months later...

Tengo exactamente el mismo problema. A mi sí me interesa que haya una variante por defecto (para el tema de las fotos) pero no quiero que el producto aparezca como agotado cuando sí hay otras variaciones disponibles. ¿Alguna idea de cómo solucionarlo?

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...