Jump to content

venta de cervezas y prestashop 1.6


xpoveda

Recommended Posts

Hola, buenas tardes, 

 

Estoy montando una cerveceria con la particularidad que los quiero vender en packs.

 

Por ejemplo, de la cerveza X la quiero vender en packs de 6 unidades y para la cerveza Y en packs de 6 y de 12 (por ejemplo).

 

El problema es que quiero tener un unico producto para la cerveza X y otra para la cerveza Y y que se muestre el precio por unidad al cliente y luego que el seleccione el precio del pack.

 

Por ejemplo si la cerveza X vale 1 euro, el pack de 6 unidades valdria 6 pero quiero que inicialmente el cliente vea el precio por unidad.

 

Como montar esto?, alguna idea?,

 

Me explico falta, algo como esto:

 

http://www.cervezus.com/comprar-cerveza-internet/cervezas-internacionales-tipos/cerveza-especiales/cerveza-eku-28-botella

 

Gracias!!

 

Xavier.

 

Link to comment
Share on other sites

Hola Ventura, buenos dias, 

 

 

La creación de combinaciones ya la se, lo que pasa es que lo que quiero hacer es tener un combo, como el ejemplo que he dado de cervezas, en el que hayan los siguientes valores:

 

1. -- seleccionar --

2. pack de 6

3. pack de 12

 

El valor por defecto del combo ha de ser -- seleccionar --

 

De este modo yo tendría que 1 cerveza valdría 2 EUR (por ejemplo) y eso es lo que vería siempre el producto en las listas de productos y en la ficha de producto inicialmente, pero NO podría comprar una sola cerveza, la ha de comprar necesariamente en pack.

 

Esto es así por un criterio estrictamente de empresa, las cervezas siempre van en pack y también por un tema de marketing, es mucho mas sencillo comparar con precios por unidad por parte del cliente respecto a tu tienda y la de los demás.

 

Lo estoy intentando pero no lo acabo de atajar.

 

El problema es la navegabilidad que tengo y que puedes ver en mi web de desarrollo http://goo.gl/ID5pGI.

 

Algo tan sencillo me trae de cabeza, he creado una combinación que tiene el elemento UNIDAD (por defecto para que se vea en la ficha de producto ese precio) y los elementos PACK DE 6 y PACK de 12.

 

Establezco para UNIDAD un stock de 1, pero un minimo de 6.

Para el resto pongo un stock de 100 y el mínimo por defecto que es 1.

 

De esta forma consigo tenerlo todo ok, no permitiendo la compra por UNIDAD, PEROOOOO al navegar entre los elementos del combo del producto la cantidad la ha movido a 6, cuando yo no quiero que toque ese TEXTBOX de cantidad, y ademas en las combinaciones de PACK tienen 1 de mínimo.

 

Me parece que es un problema heredado de prestashop 1.5 donde el dato "cantidad mínima" se indica "si es 1 no tendrá efecto" y no esta muy bien resuelto en prestashop 1.6.

 

No se si me he explicado, funcionalmente creo que esta claro, necesito mostrar precio por  unidad pero los clientes solo han de poder comprar en packs, a ver si me hechas una mano (lo agradecere eternamente, y si hay que hacer aportación económica sin problema).

 

Muchas gracias!!!

 

Xavier.

Link to comment
Share on other sites

creo que las combinaciones sería la mejor opcion para lo que quieres hacer.

 

Nombre combinacion ---> Unidades

 

Combinaciones --->  1 unidad, Pack de 6, Pack de 12...... Se entiende que cada unidad de un pack serian las 6 ó 12 unidades, con su consiguiente incrementos de precio y peso como muestra el ejemplo de la web que indicas

 

Luego mediante codigo se puede ocultar la opcion de una unidad para que no aparezca en el desplegable, si lo que quieres es no vender por unidades. Otra opcion es vender por packs pero para eso tendrías que crear como producto el pack de 6, 12.....

Link to comment
Share on other sites

Ok, no mostrar en el desplegable la combinacion UNIDAD.

 

¿Sabes el codigo para que no construya el combo en el product.tpl cuando la combinacion se llame asi?

 

Yo voy a investigar tambien, si lo saco lo pongo por aqui.

 

Gracias!!

 

Xavier.

Link to comment
Share on other sites

Una posible solución para no tener que modificar demasiado, puede ser lo siguiente:

 

Para cada producto crearle la combinación que necesites para su venta, si son en pack de 6 y 12. Y yo jugaría con campos que ya tienes y que probablemente no uses como puede ser el campo precio mayorista. Si lo usas evidentemente habría que usar otro o crearlo. 

 

De esta manera, yo pondría el precio por unidad en ese campo y a partir de ahí, te tocaría modificar el product.tpl, product-list y los módulos donde aparezca el precio para ocultar los precios actuales y mostrar ese campo. Posiblemente te tocará cambiar alguna  consulta para que devuelva este campo de bbdd, pero bueno, creo que es una solución que requerirá menos cambios. 

 

Esto también te puede permitir que en cualquier sitio puedas mostrar el precio por unidad y el precio del pack.

Link to comment
Share on other sites

Parece que una cosa tan sencilla como poner un combo con tres campos "--seleccionar--, pack de 6 y pack de 12" es una pequeña odisea ;).

 

He conseguido eliminar del combo el elemento "UNIDAD" del product.tpl, pero ahora me encuentro con otro problema, si hago un "AÑADIR CARRITO" desde una lista de productos no hace nada.

 

Jesa, tu solucion me parece demasiado compleja (que seguro que ira, pero llevarla a cabo lo veo muy complicado).

 

Este funcionamiento es asi porque se trata de una combinacion?

 

He revisado el ejemplo que os comente y esta en "opencart", parece que ahi si que esta bien solucionado el tema de los combos..

 

Gracias!!

 

Xavier.

Link to comment
Share on other sites

Evidentemente es más complejo que hacerlo simplemente desde el BO, pero...la prueba la tienes que arreglas una cosa y se estropea otra. No digo que no halla solución porque muchas veces es cuestión de dar con la tecla combinando todas las posibilidades que ofrece prestashop, pero yo creo que al final te tocará tocar código. 

 

Prestashop solo muestra las combinaciones en el combo. No permite por defecto meter un valor vacío. El problema de eliminar esta opción posiblemente sea que es la combinación por defecto y al quitarla te dará algún error que hace que no puedas añadir al carrito. 

Link to comment
Share on other sites

Hola Ventura, no hay problema, lo que me interesa en el product list es que salga con la combinacion por defecto (UNIDAD) pero cuando salga a la pagina de producto solo tenga la opcion del pack.

 

Ya lo tengo casi solucionado, pongo la solucion final en cuanto este...

 

Una pregunta, hay forma de que al hacer un "añadir carrito" en los productos que te devuelve el "product-list" no añada al carrito sino que vaya a la pagina de producto?

 

Asi ya estaria todo cerrado........

 

Gracias!!

 

Xavier.

Link to comment
Share on other sites

Buenasss, resuelto:

 

En product.tpl

 

{elseif ($group.group_type == 'radio')}
<ul>
{foreach from=$group.attributes key=id_attribute item=group_attribute}
     <!-- XAVI -->
   {if ($group_attribute != "UNIDAD")}
<li>
<input type="radio" class="attribute_radio" name="{$groupName|escape:'html':'UTF-8'}" value="{$id_attribute}" {if (($group.default == $id_attribute) || ($group_attribute == "6 BOTELLAS"))} checked="checked"{/if} />
<span>{$group_attribute|escape:'html':'UTF-8'}</span>
</li>
{/if}
{/foreach}
</ul>
{/if}
 
En product-list.tpl
 
<div class="button-container">
{if ($product.id_product_attribute == 0 || (isset($add_prod_display) && ($add_prod_display == 1))) && $product.available_for_order && !isset($restricted_country_mode) && $product.minimal_quantity <= 1 && $product.customizable != 2 && !$PS_CATALOG_MODE}
{if ($product.allow_oosp || $product.quantity > 0)}
{if isset($static_token)}
   <!-- XAVI -->
<!-- <a class="button ajax_add_to_cart_button btn btn-default alt" href="{$link->getPageLink('cart',false, NULL, "add=1&id_product={$product.id_product|intval}&token={$static_token}", false)|escape:'html':'UTF-8'}" rel="nofollow" title="{l s='Add to cart'}" data-id-product="{$product.id_product|intval}"> -->
<a class="button btn btn-default alt" href="{$product.link|escape:'html':'UTF-8'}" title="{$product.name|escape:'html':'UTF-8'}" itemprop="url">
<span>{l s='Add to cart'}</span>
</a>
{else}
   <!-- XAVI -->
<!-- <a class="button ajax_add_to_cart_button btn btn-default alt" href="{$link->getPageLink('cart',false, NULL, 'add=1&id_product={$product.id_product|intval}', false)|escape:'html':'UTF-8'}" rel="nofollow" title="{l s='Add to cart'}" data-id-product="{$product.id_product|intval}"> -->
<a class="button btn btn-default alt" href="{$product.link|escape:'html':'UTF-8'}" rel="nofollow" title="{l s='Add to cart'}" itemprop="url"> 
<span>{l s='Add to cart'}</span>
</a>
{/if}
 

Muchisimas gracias por vuestras ayuda!!

 

;)

 

Xavier.

Link to comment
Share on other sites

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