Jump to content
nsm

Mostrar 2 precios en Prestashop 1.7.5

Recommended Posts

Estimados necesito mostrar 2 precios en mi web (precio lista y un precio con descuento si ´paga en billetes o transferencia bancaria)

Encontre este codigo en  ....themes/classic/templates/catalog/_partials/miniatures/product.tpl

   Linea73        <span class="sr-only">{l s='Price' d='Shop.Theme.Catalog'}</span>
                         <span itemprop="price" class="price">Efec/Dep {$product.price} IVA Inc.</span>

que es el que muestra el precio desde la base de datos, pero en alguna parte lo modifica y lo transforma es un string agregando el simbolo de la moneda (En base de datos dice el numero "100", y el $product.price es "$ 100")

necesito agregar algo como esta linea justo abajo
              <span itemprop="price" class="price">Tarjetas {$product.price/0.95} IVA Inc.</span>

pero como el $product.price es un string me arroja valor 0

Reemplaze el $product.price/0.95 por $product.price_amount/0.95 y me entrega el numero, pero pierdo el formato de miles y decimales 

image.thumb.png.83186b93e8f9d7f46b7e4e0bbcebf259.png

Necesito que quede (ejemplo)

Efec/Dep $ 149.999 IVA Inc. (este es el precio asignado en la base de datos)
Tarjetas $ 157.894 IVA Inc. (este es el precio anterior dividido por 0.95)

Alguna idea de como hacer esto ?

Gracias

 

Edited by selectshop.at
mass capital letters on title removed (see edit history)

Share this post


Link to post
Share on other sites

Hola,

Mostrar 2 precios podría ser relativamente simple si el segundo precio será en base a un porcentaje unitario para toda la tienda, además si quieres que también tenga un efecto a la hora de completar el pedido, esa sería la única forma de lograrlo con módulos que ya existen para tal cosa. Pero si lo que pretendes es asignar precios específicos por producto y ademas que sea asi como se genere el pedido según sea el método de pago, te recomiendo que vayas buscando un programador.

 

Saludos!

Share this post


Link to post
Share on other sites

No olvideís el viejo displayPrice, creo que ahora usa formatPrice de Locale...

Saludos

  • Like 1

Share this post


Link to post
Share on other sites

Necesito saber que codigo poner en PS 1.7.6 para mostrar 2 precios (precio regular y precio *0.8)Seria asi

$ 10 regular
$ 8 Premium

Y poder ocultarlo al grupo premium ya que este es el grupo que tiene el descuento y y de ver esta linea veria  su precio con descuento $ 8 y abajo el descuento $6.4

La linea es uniforme para todo el sitio, para todos los grupos exepto para el grupo premium, es solo a modo informativo, no es necesario que influya en el carrito, solo es para llamar la atencion para que los clientes pregunten por el precio premium.

Un ejemplo nada estetico seria este  http://herbalpedidos.com/


Gracias 🙂

Edited by the22 (see edit history)

Share this post


Link to post
Share on other sites
On 5/30/2019 at 9:48 AM, Rolige said:

Hola que modulo sirve para esto , no lo e podido pillar ?

On 5/30/2019 at 9:48 AM, Rolige said:

 

Hola,

Mostrar 2 precios podría ser relativamente simple si el segundo precio será en base a un porcentaje unitario para toda la tienda, además si quieres que también tenga un efecto a la hora de completar el pedido, esa sería la única forma de lograrlo con módulos que ya existen para tal cosa. 

 

Saludos!

 

Share this post


Link to post
Share on other sites

Como habéis comentado, mostrar 2 precios en la ficha de producto es relativamente sencillo, siempre y cuándo el segundo se base en el primero y sólo sea a título informativo (no se aplique al precio que se añade al carrito).

nsm ya ha mostrado en el primer post cómo hacerlo. Lo único que le faltaba es dar el formato deseado a la cantidad (con el formato de miles y decimales). Esto se puede hacer de varias formas, pero quizás la más sencilla es utilizar la función number_format de PHP, de modo que quedaría:

<span itemprop="price" class="price">Tarjetas {number_format($product.price_amount/0.95, 3, '.', ',')} IVA Inc.</span>

El formato es: number_format(cantidad, número de cifras decimales, símbolo decimal, símbolo de miles)

Si además de esto se necesita que esa cantidad sea usada luego bajo alguna condición para calcular el precio en el carrito, entonces o bien se debe crear un cupón que se aplique automáticamente (si las condiciones lo permiten), o bien recurrir a algún módulo.

Share this post


Link to post
Share on other sites

Hola, lo correcto en este caso es realizar lo siguiente:

  1. Crear un grupo de usuarios, por ejemplo Premium.
  2. Aplicar a este grupo de usuarios un descuento porcentual o cuantitativo, eso ya a decisión del admin de la tienda.
  3. Si queremos que solo se muestre un precio, ya lo tendríamos hecho, aplicaría tanto a los listados, como ficha de producto como carrito.
  4. Si queremos que ambos se muestren a la vez, hay algún módulo que podría buscar (no recuerdo de cabeza), o modificar .tpl para mostrar ambas variables, pero solo una de ellas tendría efectos en el carrito dependiendo del grupo al que pertenezca el navegante.

Saludos.

Share this post


Link to post
Share on other sites
On 11/3/2019 at 8:55 AM, Luisejo said:

Hola, lo correcto en este caso es realizar lo siguiente:

  1. Crear un grupo de usuarios, por ejemplo Premium.
  2. Aplicar a este grupo de usuarios un descuento porcentual o cuantitativo, eso ya a decisión del admin de la tienda.
  3. Si queremos que solo se muestre un precio, ya lo tendríamos hecho, aplicaría tanto a los listados, como ficha de producto como carrito.
  4. Si queremos que ambos se muestren a la vez, hay algún módulo que podría buscar (no recuerdo de cabeza), o modificar .tpl para mostrar ambas variables, pero solo una de ellas tendría efectos en el carrito dependiendo del grupo al que pertenezca el navegante.

Saludos.

Hola, yo he creado todo tal y como dicen, pero al intentar mostrar los dos precio por product.tpl, pongo la siguiente sentencia pero no me coge el precio base del producto, sino que me coge el mismo precio con el descuento de minorista aplicado: 

<span >PVPR: {$product.regular_price}</span>

En mi caso como veis es para añadir el Precio Venta Recomendado basado en el base del producto. Por si ayuda, me da la impresión de que me modifica la variable por la sesión activa, pero no se como anularlo.

Gracias por vuestra ayuda!

 

 

Share this post


Link to post
Share on other sites
hace 21 horas, despuntado dijo:

Hola, yo he creado todo tal y como dicen, pero al intentar mostrar los dos precio por product.tpl, pongo la siguiente sentencia pero no me coge el precio base del producto, sino que me coge el mismo precio con el descuento de minorista aplicado: 

<span >PVPR: {$product.regular_price}</span>

En mi caso como veis es para añadir el Precio Venta Recomendado basado en el base del producto. Por si ayuda, me da la impresión de que me modifica la variable por la sesión activa, pero no se como anularlo.

Gracias por vuestra ayuda!

 

 

Si no te quieres complicar: https://addons.prestashop.com/es/gestion-de-precios/47570-muestra-varios-precios-en-la-pagina-de-producto.html

Share this post


Link to post
Share on other sites
On 11/2/2019 at 7:58 PM, Prestafan33 said:

Como habéis comentado, mostrar 2 precios en la ficha de producto es relativamente sencillo, siempre y cuándo el segundo se base en el primero y sólo sea a título informativo (no se aplique al precio que se añade al carrito).

nsm ya ha mostrado en el primer post cómo hacerlo. Lo único que le faltaba es dar el formato deseado a la cantidad (con el formato de miles y decimales). Esto se puede hacer de varias formas, pero quizás la más sencilla es utilizar la función number_format de PHP, de modo que quedaría:


<span itemprop="price" class="price">Tarjetas {number_format($product.price_amount/0.95, 3, '.', ',')} IVA Inc.</span>

El formato es: number_format(cantidad, número de cifras decimales, símbolo decimal, símbolo de miles)

Si además de esto se necesita que esa cantidad sea usada luego bajo alguna condición para calcular el precio en el carrito, entonces o bien se debe crear un cupón que se aplique automáticamente (si las condiciones lo permiten), o bien recurrir a algún módulo.

Muchas gracias!!! llevaba tiempo buscando solución similar.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More