Jump to content

Precio anterior tachado y porcentaje de descuento en home page y en las categorías en PS 1.5.1 HELP


Recommended Posts

En prestashop 1.4.9 era simple insertar el código que te permitiese tachar el precio de un producto y poner el porcentaje de descuento en la página principal (home page) y en las paginas de las categorías.

Con la nueva versión 1.5.1 de PrestaShop estos códigos ya no funcionan.

 

Los que entienden de código un poco más, por favor danos una mano.

A continuación, los códigos que antes se insertaban en homefeatured.tpl

 

if ((isset($product.on_sale) && $product.on_sale) || (isset($product.reduction) && $product.reduction)) && $product.price_without_reduction > $product.price && $product.show_price && !isset($restricted_country_mode) && !$PS_CATALOG_MODE}

<p class="price_container"><span class="old_price_home">

{convertPrice price=$product.price_without_reduction}

</span></p>{else}<div style="height:30px;"></div>{/if}

{if isset($product.reduction) && $product.reduction}

{math assign="reduction_amount" equation="(x - y)" x=$product.price_without_reduction y=$product.price}

{math assign="reduction_perc" equation="(x / y) * 100" x=$reduction_amount y=$product.price_without_reduction format="%.0f"}<span class="percentage"> <div align="center">

-{convertPrice price=$reduction_amount} (-{$reduction_perc} %)

{/if}

 

y en global.css

 

.old_price_home {

text-decoration: line-through;

font-size: 16px;

font-family: Verdana, Arial, Helvetica, Sans-Serif;

color: #5d717e;

 

}

.percentage {

font-size: 10px;

font-weight:bold;

color: #5d717e;

}

#featured-products_block_center .price-discount {

text-decoration: line-through;

color:red;

}

 

y para las categorias en product-list.tpl

 

 

{* codice aggiunto *}

{if isset($product.reduction) && $product.reduction && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE}

{l s='Listino: '}<span class="price-discount">{displayWtPrice p=$product.price_without_reduction}</span><br>{/if}

{* fine aggiunta *}

{if ((isset($product.on_sale) && $product.on_sale) || (isset($product.reduction) && $product.reduction)) && $product.price_without_reduction > $product.price && $product.show_price AND !isset($restricted_country_mode) && !$PS_CATALOG_MODE}

 

 

{if $product.specific_prices.reduction_type == 'amount'} Risparmi <span style="color:#598559; font-weight:bold;">€

{$product.specific_prices.reduction|string_format:"%.2f"}</span><span class="prezzo_originale"><br/>

{convertPrice price=$product.price_without_reduction}</span>

{/if}

 

{if $product.specific_prices.reduction_type == 'percentage'}Risparmi il

<span style="color:#790003; font-weight:bold; font-size:12px;">{$product.specific_prices.reduction*100} % </span><span class="prezzo_originale"><br/>

 

{/if}

</span>{else}{/if}

 

Ahora, en las categorías funciona casi todo bien excepto el precio anterior que no está tachado.

En cambio, la página de inicio (home page) en la ventana aparece únicamente el precio completo sin barra de porcentaje, y sobre todo los precios de los primeros productos se superponen con las imágenes de los de abajo.

 

Si alguien puede resolver estos problemas lo hacemos ahora santo. gracias B)

Link to comment
Share on other sites

este es el codigo nuevo

 

 

{if $product->on_sale}

<img src="{$img_dir}onsale_{$lang_iso}.gif" alt="{l s='On sale'}" class="on_sale_img"/>

<span class="on_sale">{l s='On sale!'}</span>

{elseif $product->specificPrice AND $product->specificPrice.reduction AND $productPriceWithoutRedution > $productPrice}

<span class="discount">{l s='Reduced price!'}</span>

{/if}

{if $priceDisplay == 2}

<br />

<span id="pretaxe_price"><span id="pretaxe_price_display">{convertPrice price=$product->getPrice(false, $smarty.const.NULL)}</span> {l s='tax excl.'}</span>

{/if}

Link to comment
Share on other sites

no funciona!!!

 

Hola comunidad...yo tbn he tenido el mismo problema esta noche cuando pase de la version 1.4.8 a la 1.5.2...anteriormente tenia el precio viejo tachado y el % de descuento...una vez q actualice NO me aparecen los productos del home de esta forma...unicamente me aparece un precio...ademas otra cosa q salio defectuosa de la actualizacion es el boton de ver...q ya no me aparece como boton...si no como palabra ...

 

mi tienda es www.ofertonexpress.com

 

 

 

quedo a la espera de vuestros comentarios.

 

saludos

Link to comment
Share on other sites

  • 2 weeks later...

del codigo que te pase, cambia las flechas -> por un punto .

 

asi

 

{if $product.on_sale}

<img src="{$img_dir}onsale_{$lang_iso}.gif" alt="{l s='On sale'}" class="on_sale_img"/>

<span class="on_sale">{l s='On sale!'}</span>

{elseif $product.specificPrice AND $product.specificPrice.reduction AND $productPriceWithoutRedution > $productPrice}

<span class="discount">{l s='Reduced price!'}</span>

{/if}

{if $priceDisplay == 2}

<br />

<span id="pretaxe_price"><span id="pretaxe_price_display">{convertPrice price=$product.getPrice(false, $smarty.const.NULL)}</span> {l s='tax excl.'}</span>

{/if}

Link to comment
Share on other sites

  • 1 month later...

y otra duda que tengo ¿dónde se guarda el precio que tenía anteriormente el producto? si le cambio el precio y le marco "Mostrar en la página producto el icono "en rebajas" y el texto en la lista de productos"

Pero ¿cómo sabe prestashop el precio anterior?

 

Esta parte ya la tengo resuelta: http://www.prestashop.com/forums/topic/198604-solucionado-promociones-especiales-en-la-v152/

Link to comment
Share on other sites

Esta parte ya la tengo resuelta: http://www.prestasho...les-en-la-v152/

No estaba tan resuelto como yo creía (si creas una regla desde el producto "Precios especificos" no deja aplicarla a más de un producto. NI IDEA de por qué)

" y he tenido que crear una categoría por cada tipo de % a aplicar (5%, 10%, etc..) que no son visibles. A continuación he creado una regla de precio de catálogo y se la he asignado a la categoría de % (5%, 10%, etc..).

 

Y posteriormente a cada producto se le asigna la categoría de % (5%, 10%, etc..).

 

Vaya jaleo para una cosita que debería esta integrada de forma más sencilla.

Link to comment
Share on other sites

Aunque no he recibido nada de ayuda al respecto, pongo la respuesta por si ha alguien le puede ser de ayuda a futuro:

 

hay que poner en /theme/default/css/global.css las siguientes clases al final del todo:

 

/*************** Añadido para etiqueta descuento en lista de productos - AÑADIDO de blockspecials.css ***************/

 

.reduction {

display:block;

float:right;

padding:0 0 0 10px;

font-weight:bold;

font-size:12px;

color:#fff;

background:url(../../../modules/blockspecials/img/bg_reduction.png) no-repeat 0 0

}

.price-discount {

font-size:12px;

text-decoration:line-through

}

 

para que aparezca en la lista de productos el precio final, el anterior tachado y el % por ciento de descuento (con la etiquetita roja) hay que tocar el fichero /themes/default/product-list.tpl

 

tras éste código:

 

<div class="content_price">

{if isset($product.show_price) && $product.show_price && !isset($restricted_country_mode)}<span class="price" style="display: inline;">{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span><br />{/if}

{if isset($product.available_for_order) && $product.available_for_order && !isset($restricted_country_mode)}<span class="availability">{if ($product.allow_oosp || $product.quantity > 0)}{l s='Available'}{elseif (isset($product.quantity_all_versions) && $product.quantity_all_versions > 0)}{l s='Product available with different options'}{else}{l s='Out of stock'}{/if}</span>{/if}

 

HAY que añadir todo este:

 

<!-- AÑADIDO para poner en lista de productos descuento y tanto por ciento -->

 

{if isset($product.reduction) && $product.reduction && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE}

<span class="price-discount">{displayWtPrice p=$product.price_without_reduction}</span><br>{/if}

 

{if ((isset($product.on_sale) && $product.on_sale) || (isset($product.reduction) && $product.reduction)) && $product.price_without_reduction > $product.price && $product.show_price AND !isset($restricted_country_mode) && !$PS_CATALOG_MODE}

 

 

{if $product.specific_prices.reduction_type == 'amount'} Risparmi <span style="color:#598559; font-weight:bold;">€

{$product.specific_prices.reduction|string_format:"%.2f"}</span><span class="prezzo_originale"><br/>

{convertPrice price=$product.price_without_reduction}</span>

{/if}

 

{if $product.specific_prices.reduction_type == 'percentage'}

<!-- <span style="color:#790003; font-weight:bold; font-size:12px;">{$product.specific_prices.reduction*100} % </span><span class="prezzo_originale"><br/>

-->

<span class="reduction">-{$product.specific_prices.reduction*100} % </span><span class="prezzo_originale"><br/>

 

{/if}

</span>{else}{/if}

 

<!-- FIN AÑADIDO para poner en lista de productos descuento y tanto por ciento -->

 

 

Espero haberos ayudado a quienes lo necesitéis, sobre todo a los ESPAÑOLES que es necesario por Ley mostrar en descuentos los precios anteriores.

  • Like 3
Link to comment
Share on other sites

  • 2 weeks later...

el codigo que pego el amigo es el que funciona

 

 

 

{if isset($product.reduction) && $product.reduction && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE}

<span class="price-discount">{displayWtPrice p=$product.price_without_reduction}</span><br>{/if}

 

{if ((isset($product.on_sale) && $product.on_sale) || (isset($product.reduction) && $product.reduction)) && $product.price_without_reduction > $product.price && $product.show_price AND !isset($restricted_country_mode) && !$PS_CATALOG_MODE}

 

 

{if $product.specific_prices.reduction_type == 'amount'} Risparmi <span style="color:#598559; font-weight:bold;">€

{$product.specific_prices.reduction|string_format:"%.2f"}</span><span class="prezzo_originale"><br/>

{convertPrice price=$product.price_without_reduction}</span>

{/if}

 

{if $product.specific_prices.reduction_type == 'percentage'}

<!-- <span style="color:#790003; font-weight:bold; font-size:12px;">{$product.specific_prices.reduction*100} % </span><span class="prezzo_originale"><br/>

-->

<span class="reduction">-{$product.specific_prices.reduction*100} % </span><span class="prezzo_originale"><br/>

 

{/if}

</span>{else}{/if}

Link to comment
Share on other sites

  • 2 months later...
  • 3 weeks later...

A mi me funciona cuando se lista el articulo, pero no la pagina del producto. ¿Que código hay que poner para que en la pagina del producto salga el precio original tachado?

 

Para los listados, bien. Pero hay que tener en cuenta que se hace referencia al tema por defecto, si se usa uno personalizado, hay que modificar los archivos de este y no del default.

Link to comment
Share on other sites

  • 3 weeks later...

Buenas Tardes.

 

Yo también estoy interesado en mostrar el precio anterior tachado en la página del producto. Utilizo 1.5.4.1

Lo tengo puesto en las categorías y en productos destacados, pero cuento entro en el producto, no aparece.

 

Alguna ayuda?

Link to comment
Share on other sites

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