Jump to content

Recommended Posts

Buenos días:

Google webmaster tools me dice que tengo error en los datos estructurados de mis productos: me dice "falta price" el caso es que todos los productos tienen precio y en el comprobador de google el artículo sale con precio. 

Uso el tema por defecto y la versión es V1.6

¿A alguien le ha pasado lo mismo?

Gracias

 

Link to comment
Share on other sites

  • 3 weeks later...
  • 3 weeks later...

No, detecté la posible solución en mi plantilla (warehouse), el código schema de offer lo cambié por price, pero nada, no he logrado nada. Tampoco encuentro nada por la red al respecto, ni en los foros de google, ni en la ayuda de schema.

 

Me uno a la petición. ¿Conseguisteis solucionarlo?

Link to comment
Share on other sites

  • 2 weeks later...
  • 1 month later...
  • 2 weeks later...

Mismo problema. Tambien uso Warehouse de plantilla, no tengo ningun problema, sin embargo de 249 productos, me sale el fallo en 10 con schema.org sobre el precio.

No lo entiendo, esta todo como el resto de productos que no dan problemas.

Uso la version 1.5.6.2 de Prestashop.

 

¿Alguien sabe algo?

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

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

En mi caso, los errores de falta price están desapareciendo mediante la modificación del product.tpl y el product-list.tpl que indica la página de Nemos, justo en el apartado Price and Currency: "This is perhaps the most important part, because Google may decide not to add rich snippets for your site, if something is wrongly setup here (as I discovered with my own errors!)."

 

Explica precisamente el porqué del error y cómo solventarlo, haciendo que la etiqueta para microdatos referente al precio se muestre sin el símbolo del €.

  • Like 2
Link to comment
Share on other sites

  • 2 weeks later...

él intentado La Solución Que se PROPONE Aquí y me da Errores y he aquí que él Dejado estába como, sabeis si this Mejor Explicado en Otro Sitio, os ESTAS RESULTADO a Todos this solution?

 

muchas gracias, os dejo la web Que administro Por si quereis Echarle Vistazo de la ONU.

 

http://bibatools.com/

Yo lo he intentado que él y los Errores Siguen Ahí.

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

Así es cómo he dejado yo el product.tpl, alrededor de la línea 264:

                <p class="our_price_display" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
                {if $priceDisplay >= 0 && $priceDisplay <= 2}
                {$rightPrice = {convertPrice price=$productPrice[spam-filter]
                    
                <span id="our_price_display" itemprop="price">{$rightPrice|regex_replace:"/[\\{$currencySign}]/":""}</span>
                    <meta itemprop="priceCurrency" content="{$currency->iso_code}" /> {$currencySign}
                    <!--{if $tax_enabled  && ((isset($display_tax_label) && $display_tax_label == 1) OR !isset($display_tax_label))}
                        {if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}
                    {/if}-->
                {/if}
                </p>

En este punto, el signo de moneda ya está fuera de la etiqueta de precio con lo que Google se supone que acepta como correcto. Para el caso de productos con combinaciones, el signo saldrá repetido y por ello debemos modificar también el product.js situado en la carpeta /js/ del directorio de la plantilla.

 

Añadir justo debajo de la línea $('#our_price_display').text(our_price); sobre la linea 394 :

var re = new RegExp("\\"+currencySign, "g");
var signRemoved = our_price.replace(re, "");

$('#our_price_display').text(signRemoved);

La versión de PS que utilizo es la 1.5, para 1.6 también debería de funcionar. Recordad también que pueden pasar varios días hasta que Google rastree de nuevo vuestras páginas.

  • Like 1
Link to comment
Share on other sites

A mi me sucede lo mismo, lo que puedo observar es que los datos estructurados de los productos funcionan correctamente, el problema viene con la home y las categorías, que detecta varios productos pero sin datos estructurados.

 

Se podría solucionar de la misma manera? uso PS 1.6.

Link to comment
Share on other sites

muchas gracias xinito,

He hecho el cambio que propones en prestashop 1.6, con el product.tpl funciona perfectamente, pero en el product.js no encuentro en prestashop 1.6 la linea  $('#our_price_display').text(our_price); seria ideal que alguien nos dijera donde colocar este código.

Muchas gracias a todos por la ayuda

Link to comment
Share on other sites

Como lo que se busca es eliminar el signo de € para los productos con combinaciones, sin necesidad de tocar el product.js, podemos modificar la línea del product.tpl donde se invoca, quedando de la siguiente manera:

<p class="our_price_display" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
     {if $priceDisplay >= 0 && $priceDisplay <= 2}
         {$rightPrice = {convertPrice price=$productPrice[spam-filter]
                   
         <span id="our_price_display" itemprop="price">{$rightPrice|regex_replace:"/[\\{$currencySign}]/":""}</span>
         {if isset($groups)}<span></span>{else}<span class="price">{$currency->sign}</span>{/if}
     {/if}
</p>

Podría ser una solución, no sé si la mejor.

Un saludo.

Link to comment
Share on other sites

Voy a ver si puedo aclararos algo.

Para las versiones 1.6 modificar el pordut.js no funciona

 
Si lo modificáis según el documento explica y añadis esto:
var re = new RegExp("\\"+currencySign, "g");
var signRemoved = our_price.replace(re, "");
$('#our_price_display').text(signRemoved);
 
Al hacer cualquier cambio de combinación en el producto que afecte al precio no funcionará (por ejemplo cambiar un pote de pintura del formato de 1l a uno de 4l)
 
Para el product.js sólo hay que añadir:
 
var re = new RegExp("\\"+currencySign, "g");
 
Veréis que si lo haceís borra uno de los dos sinos del € pero el precio sale con 3 decimales. Hay que cambiar esta línea:
 
$('#our_price_display').text(formatCurrency(priceWithDiscountsDisplay * currencyRate, currencyFormat, currencySign, currencyBlank));
 
Por la siguiente (borra currencySign y lo cambiamos por un espacio)
 
$('#our_price_display').text(formatCurrency(priceWithDiscountsDisplay * currencyRate, currencyFormat, " ", currencyBlank));
 
El precio ya se verá sólo con 2 decimales.
 
En cuanto a los errores en las herramietas de webmaster poco o nada se puede hacer. Como comenta en el artículo:
 
"Google only accepts rich snippets for pages which have a single product (for some reason I still have to discover, I didn’t know it before they directly contacted me about my own product list: Product markup on listing pages is not supported
 
Los errores que os aparecen son las páginas de nuevos, populares, los más vendidos y tal y como está actualmente estrcuturado Google, de momento no desaparecerán. De todos modos el impacto negativo que puede tener en el posicionamiento es nulo. Lo importante es que las páginas de visualización del producto estén bien.
 
Un saludo.
 
 
 
 
Link to comment
Share on other sites

Ya edite el product.tpl desde el editor de codigo de Cpanel , pero me sigue saliendo el mismo error cuando pruebo las herramientas de datos estructurados. 

 

En price currency sale 1, no debería salir la moneda? parece que la plantilla no reconoce el cambio de divisa.

 

Alguien podría ayudarme ? me estoy volviendo loco porque de estar en la primera pagina de google, de pronto desapareció mi pagina debido a esos errores en la tienda en línea. 

 

Si quito el enlance a la tienda que está dentro de la página vuelvo a regresar al ranking de la primera página en google. 

 

Este es el error con el código ya modificado: 

 

 

offers:
Item 1
url: More offers:
Item 2
Error: Incomplete microdata with schema.org.
Item 1
type: http://schema.org/offer property:   price: $266.00 pricecurrency: 1
Item 2
type: http://schema.org/offer property:   availability: http://schema.org/InStock

 

 

muchas gracias por la ayuda

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

  • 2 weeks later...

El problema que está dando básicamente en algunas plantillas es que en las páginas de productos product-list.tpl

se está dejando información básica para la validación del schema.org desde webmasterstools.

 

Ocurre lo siguiente.

 

En algunas plantillas el campo pricecurrency del esquema lo deja = 0 cuando tiene que ser = EUR (en el caso de euros)

para arreglar esto en el product-list.tpl fijaros que tienen que quedar así todas las referencias a pricecurrency:

<meta itemprop="priceCurrency" content="{$currency->iso_code}" />

por otra parte es importante que el elemento del esquema que nos dice si el producto está en stock tiene que contener también el precio y la moneda igual que se muestra a continuación.

 

Item 1
type:	http://schema.org/offer
property:	
    availability:	http://schema.org/InStock
    price:	        50 €
    pricecurrency:	EUR

 

debería quedar más o menos así

<span itemprop="offers" itemscope itemtype="http://schema.org/Offer" class="availability">
    {if ($product.allow_oosp || $product.quantity > 0)}
    <span class="{if $product.quantity <= 0}out-of-stock{else}available-now{/if}">
        <link itemprop="availability" href="http://schema.org/InStock" />{if $product.quantity <= 0}{if $product.allow_oosp}{$product.available_later}{else}{l s='Out of stock'}{/if}{else}{if isset($product.available_now) && $product.available_now}{$product.available_now}{else}{l s='In Stock'}{/if}{/if}
        <span itemprop="price"> {if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>
        <meta itemprop="priceCurrency" content="{$currency->iso_code}" />
    </span>
    {elseif (isset($product.quantity_all_versions) && $product.quantity_all_versions > 0)}
    <span class="available-dif">                                                                                
        <link itemprop="availability" href="http://schema.org/LimitedAvailability" />{l s='Product available with different options'}
        <span itemprop="price"> {if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>
        <meta itemprop="priceCurrency" content="{$currency->iso_code}" />
    </span>
    {else}
    <span class="out-of-stock">                                                                                
        <link itemprop="availability" href="http://schema.org/OutOfStock" />{l s='Out of stock'}
        <span itemprop="price"> {if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>                                                                                
        <meta itemprop="priceCurrency" content="{$currency->iso_code}" />
    </span>
    {/if}
</span>
Edited by Lex-Luthor (see edit history)
  • Like 3
Link to comment
Share on other sites

 

El problema que está dando básicamente en algunas plantillas es que en las páginas de productos product-list.tpl

se está dejando información básica para la validación del schema.org desde webmasterstools.

 

Ocurre lo siguiente.

 

En algunas plantillas el campo pricecurrency del esquema lo deja = 0 cuando tiene que ser = EUR (en el caso de euros)

para arreglar esto en el product-list.tpl fijaros que tienen que quedar así todas las referencias a pricecurrency:

<meta itemprop="priceCurrency" content="{$currency->iso_code}" />

por otra parte es importante que el elemento del esquema que nos dice si el producto está en stock tiene que contener también el precio y la moneda igual que se muestra a continuación.

 

Item 1
type:	http://schema.org/offer
property:	
    availability:	http://schema.org/InStock
    price:	        50 €
    pricecurrency:	EUR

 

debería quedar más o menos así

<span itemprop="offers" itemscope itemtype="http://schema.org/Offer" class="availability">
    {if ($product.allow_oosp || $product.quantity > 0)}
    <span class="{if $product.quantity <= 0}out-of-stock{else}available-now{/if}">
        <link itemprop="availability" href="http://schema.org/InStock" />{if $product.quantity <= 0}{if $product.allow_oosp}{$product.available_later}{else}{l s='Out of stock'}{/if}{else}{if isset($product.available_now) && $product.available_now}{$product.available_now}{else}{l s='In Stock'}{/if}{/if}
        <span itemprop="price"> {if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>
        <meta itemprop="priceCurrency" content="{$currency->iso_code}" />
    </span>
    {elseif (isset($product.quantity_all_versions) && $product.quantity_all_versions > 0)}
    <span class="available-dif">                                                                                
        <link itemprop="availability" href="http://schema.org/LimitedAvailability" />{l s='Product available with different options'}
        <span itemprop="price"> {if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>
        <meta itemprop="priceCurrency" content="{$currency->iso_code}" />
    </span>
    {else}
    <span class="out-of-stock">                                                                                
        <link itemprop="availability" href="http://schema.org/OutOfStock" />{l s='Out of stock'}
        <span itemprop="price"> {if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>                                                                                
        <meta itemprop="priceCurrency" content="{$currency->iso_code}" />
    </span>
    {/if}
</span>

 

 

Quiero agradecerte muchísimo!!..

 

Ahora insetando tu código en el product-list.tpl me sale esto en google webmaster tools:

Item 1
type:	http://schema.org/offer
property:	
price:	3 825,00 $
pricecurrency:	MXN

Item 2
type:	http://schema.org/offer
property:	
availability:	http://schema.org/InStock
price:	3 825,00 $
pricecurrency:	MXN

Me salen como duplicados los datos , pero ya sale en price currency el valor de la moneda, antes salía el número 1.. 

 

Supongo que habría que esperar algo de tiempo a que google reconozca los cambios e indexe el contenido otra vez corrigiendo esos errores.. no? 

 

Abusando de tu amabilidad, quisiera saber si tienes idea de porque salen datos duplicados en los rich snippets? 

 

 

URL de página Elementos
clear.cache.gif
Elementos con errores
Detectado por última vez Nombre (name) Precio (price) Marca (brand) Modelo (model)
 
Errores
/tienda/
6
 
6
12/11/14
Mini Hexacoptero para vigilancia aerea Mini Hexacoptero para vigilancia aerea
3 825,00 $
Falta: price
Naze32 Acro Naze32 Acro
820,00 $
Falta: price
Mini Hexacoptero para vigilancia aerea Mini Hexacoptero para vigilancia aerea
3 825,00 $
Falta: price
Naze32 Acro Naze32 Acro
820,00 $
Falta: price
Mini Hexacoptero para vigilancia aerea Mini Hexacoptero para vigilancia aerea
3 825,00 $
Falta: price
Naze32 Acro Naze32 Acro
820,00 $
Falta: price
 
1

 

De verdad estoy super agradecido  con tu ayuda porque mi sitio de pronto bajó unas 4 páginas en su ranking debido al error precio.. No le he movido ninguna otra cosa adicional.

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

Yo he hecho los cambios que proponeis y la cosa continua igual al probar los datos. Así que ya no se que probar. Me siguen saliendo datos erroneos, la moneda no sale y que falta price.

 

Vuelvo a dejar los originales y a ver que se puede hacer, porque con tanto cambio y tanta versión ya me he perdido.

Link to comment
Share on other sites

  • 2 weeks later...
  • 2 weeks later...

Buenas jjryeste, en tu caso debes modificar el archivo product.tpl de tu plantilla y buscar la línea (sobre la 177):

<div id="short_description_content" class="rte align_justify" itemprop="description">{$product->description_short}</div>

Hay que quitar el itemprop="description" que es la etiqueta que define el campo de descripción para los microdatos y ponerla en el sitio que corresponda a la descripción larga del producto. Más abajo en el mismo product.tpl, sobre la línea 476 aparece el div para ello, ahí debes insertar la etiqueta itemprop como ya viene señalado:

<div itemprop="description" class="rte">{$product->description}</div>

Link to comment
Share on other sites

Entiendo que la primera linea hay que ponerla asi

<div id="short_description_content" itemprop="description" class="rte align_justify" >{$product->description_short}</div>

y la segunda me aparece esto desde linea 465 a 475 tengo esto

 

<!--end Data sheet -->
        {/if}
        {if $product->description}
            <!-- More info -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='More info'}</h3>{/if}
                {if isset($product) && $product->description}
                    <!-- full description -->
                    <div  class="rte">{$product->description}</div>
            </section>
            <!--end  More info -->

 

 

donde pongo <div itemprop="description" class="rte">{$product->description}</div>

gracuias por preocuparte, estoy con prestashop 1.6

Link to comment
Share on other sites

En esa primera línea debes quitar el itemprop="description" quedando así:

 

<div id="short_description_content" class="rte align_justify" >{$product->description_short}</div>

 

En la segunda parte, añades esa etiqueta al div de la descripción larga, tal y como lo has pegado, quedaría así:

 

<!--end Data sheet -->
        {/if}
        {if $product->description}
            <!-- More info -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='More info'}</h3>{/if}
                {if isset($product) && $product->description}
                    <!-- full description -->
                    <div  class="rte" itemprop="description">{$product->description}</div>
            </section>
            <!--end  More info -->

 

 

Lo único que se hace es cambiar la etiqueta itemprop="description" del div de la descripción corta, al div de la descripción larga.

Un saludo.

Link to comment
Share on other sites

Hola , ya lo puse, antes me aparecia esto

data-object
product (source:MICRODATA) attribute:   image: http://www.punto-de-cruz.es/1172-large_default/segadores.jpg image: http://www.punto-de-cruz.es/1172-cart_default/segadores.jpg name: Segadores sku:   condition: Nuevo description:

Patron a punto de cruz con medidas 30x40 o 40x60 Ctm ,Tela Aida 14 ,50 colores de Hilos. Esquema a ,punto de cruz, en color, alta calidad.ENVIO GRATIS,Recibira un correo con la descarga de...

 

 

y ahora no aparece descripcion sale esto en la misma seccion

 

data-object
metatags (source:METATAGS) attribute:   viewport: width=device-width, minimum-scale=0.25, maximum-scale=1.6, initial-scale=1.0 apple-mobile-web-app-capable: yes og:title: Segadores - Punto de Cruz og:url: http://www.punto-de-cruz.es/segadores.html og:type: product og:site_name: Punto de Cruz og:description: PATRONES POR TEMAS og:image: http://www.punto-de-cruz.es/1172-large_default/segadores.jpg
Link to comment
Share on other sites

Creo qu elo qu esale es la meta descripcion

veras ejemplo de uno en este http://www.punto-de-cruz.es/virgen-del-carmen-chile.html

tengo puesto en breve descripcion

Patron a punto de cruz con medidas 30x40 o 40x60 Ctm ,Tela Aida 14 ,40 colores de Hilos. Esquema a ,punto de cruz, en color, alta calidad.ENVIO GRATIS,Recibira un correo con la descarga de su patron en Formato PDF.

 

en Descripcion

Punto de cruz Virgen del Carmen Chile.

Elaborado en alta calidad grafica, en color y diseño exclusivo.Listos para su impresion en A4 . Si desea este diseño de punto de cruz en otra medida , contacte con nosotros.

 

y en optimizacion para motores de busquedas meta descripcion esto

Patron a punto de cruz Virgen del Carmen Chile    ( y esto es lo que sale) en descripcion

Link to comment
Share on other sites

Creo que el problema viene por la plantilla, en mi caso es distinta y me funcionó el cambio que te he comentado, por eso no es molestia compartirlo.

 

En tu plantilla (product.tpl) el campo de descripción está fuera del div que engloba la info del producto, deduzco que por eso no lo está cogiendo bien. Tienes que buscar en el product.tpl la línea:

 

<div class="primary_block row" itemscope="" itemtype="http://schema.org/Product">

 

Puedes probar a quitar la parte itemscope="" itemtype="http://schema.org/Product" y pegarla justo en el div anterior, es decir, en el que va a englobar el campo de la descripción también, quedando así:

 

<div id="center_column" class="center_column col-xs-12 col-sm-9" itemscope="" itemtype="http://schema.org/Product">

 

Suerte!

Link to comment
Share on other sites

ahora sale asi

Datos estructurados extraídos
rdfa-node
property:  
title: Segadores - Punto de Cruz
type: product
site_name: Punto de Cruz
description: Patron punto de cruz segadores
Item 
type: http://schema.org/product property:   name: Segadores sku:   condition: Nuevo description: Patron a punto de cruz con medidas 30x40 o 40x60 Ctm ,Tela Aida 14 ,50 colores de Hilos. Esquema a ,punto de cruz, en color, alta calidad.ENVIO GRATIS,Recibira un correo con la descarga de... aggregaterating:
Item 1
Error: Page contains property "condition" which is not part of the schema.
Link to comment
Share on other sites

OK

 

 

{*
* 2007-2014 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to [email protected] so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
*  @author PrestaShop SA <[email protected]>
*  @copyright  2007-2014 PrestaShop SA
*  @license    http://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*}
{include file="$tpl_dir./errors.tpl"}
{if $errors|@count == 0}
    {if !isset($priceDisplayPrecision)}
        {assign var='priceDisplayPrecision' value=2}
    {/if}
    {if !$priceDisplay || $priceDisplay == 2}
        {assign var='productPrice' value=$product->getPrice(true, $smarty.const.NULL, $priceDisplayPrecision)}
        {assign var='productPriceWithoutReduction' value=$product->getPriceWithoutReduct(false, $smarty.const.NULL)}
    {elseif $priceDisplay == 1}
        {assign var='productPrice' value=$product->getPrice(false, $smarty.const.NULL, $priceDisplayPrecision)}
        {assign var='productPriceWithoutReduction' value=$product->getPriceWithoutReduct(true, $smarty.const.NULL)}
    {/if}
    <div class="primary_block row" itemscope itemtype="http://schema.org/Product">
        {if !$content_only}
            <div class="container">
                <div class="top-hr"></div>
            </div>
        {/if}
        {if isset($adminActionDisplay) && $adminActionDisplay}
            <div id="admin-action">
                <p>{l s='This product is not visible to your customers.'}
                    <input type="hidden" id="admin-action-product-id" value="{$product->id}" />
                    <input type="submit" value="{l s='Publish'}" name="publish_button" class="exclusive" />
                    <input type="submit" value="{l s='Back'}" name="lnk_view" class="exclusive" />
                </p>
                <p id="admin-action-result"></p>
            </div>
        {/if}
        {if isset($confirmation) && $confirmation}
            <p class="confirmation">
                {$confirmation}
            </p>
        {/if}
        <!-- left infos-->  
        <div class="pb-left-column col-xs-12 col-sm-4 col-md-5">
            <!-- product img-->        
            <div id="image-block" class="clearfix">
                {if $product->new}
                    <span class="new-box">
                        <span class="new-label">{l s='New'}</span>
                    </span>
                {/if}
                {if $product->on_sale}
                    <span class="sale-box no-print">
                        <span class="sale-label">{l s='Sale!'}</span>
                    </span>
                {elseif $product->specificPrice && $product->specificPrice.reduction && $productPriceWithoutReduction > $productPrice}
                    <span class="discount">{l s='Reduced price!'}</span>
                {/if}
                {if $have_image}
                    <span id="view_full_size">
                        {if $jqZoomEnabled && $have_image && !$content_only}
                            <a class="jqzoom" title="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" rel="gal1" href="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'thickbox_default')|escape:'html':'UTF-8'}" itemprop="url">
                                <img itemprop="image" src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large_default')|escape:'html':'UTF-8'}" title="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" alt="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}"/>
                            </a>
                        {else}
                            <img id="bigpic" itemprop="image" src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large_default')|escape:'html':'UTF-8'}" title="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" alt="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" width="{$largeSize.width}" height="{$largeSize.height}"/>
                            {if !$content_only}
                                <span class="span_link no-print">{l s='View larger'}</span>
                            {/if}
                        {/if}
                    </span>
                {else}
                    <span id="view_full_size">
                        <img itemprop="image" src="{$img_prod_dir}{$lang_iso}-default-large_default.jpg" id="bigpic" alt="" title="{$product->name|escape:'html':'UTF-8'}" width="{$largeSize.width}" height="{$largeSize.height}"/>
                        {if !$content_only}
                            <span class="span_link">
                                {l s='View larger'}
                            </span>
                        {/if}
                    </span>
                {/if}
            </div> <!-- end image-block -->
            {if isset($images) && count($images) > 0}
                <!-- thumbnails -->
                <div id="views_block" class="clearfix {if isset($images) && count($images) < 2}hidden{/if}">
                    {if isset($images) && count($images) > 4}
                        <span class="view_scroll_spacer">
                            <a id="view_scroll_left" class="" title="{l s='Other views'}" href="javascript:{ldelim}{rdelim}">
                                {l s='Previous'}
                            </a>
                        </span>
                    {/if}
                    <div id="thumbs_list">
                        <ul id="thumbs_list_frame">
                        {if isset($images)}
                            {foreach from=$images item=image name=thumbnails}
                                {assign var=imageIds value="`$product->id`-`$image.id_image`"}
                                {if !empty($image.legend)}
                                    {assign var=imageTitle value=$image.legend|escape:'html':'UTF-8'}
                                {else}
                                    {assign var=imageTitle value=$product->name|escape:'html':'UTF-8'}
                                {/if}
                                <li id="thumbnail_{$image.id_image}"{if $smarty.foreach.thumbnails.last} class="last"{/if}>
                                    <a
                                        {if $jqZoomEnabled && $have_image && !$content_only}
                                            href="javascript:void(0);"
                                            rel="{literal}[spam-filter]/literal}gallery: 'gal1', smallimage: '{$link->getImageLink($product->link_rewrite, $imageIds, 'large_default')|escape:'html':'UTF-8'}',largeimage: '{$link->getImageLink($product->link_rewrite, $imageIds, 'thickbox_default')|escape:'html':'UTF-8'}'{literal[spam-filter]{/literal}"
                                        {else}
                                            href="{$link->getImageLink($product->link_rewrite, $imageIds, 'thickbox_default')|escape:'html':'UTF-8'}"
                                            data-fancybox-group="other-views"
                                            class="fancybox{if $image.id_image == $cover.id_image} shown{/if}"
                                        {/if}
                                        title="{$imageTitle}">
                                        <img class="img-responsive" id="thumb_{$image.id_image}" src="{$link->getImageLink($product->link_rewrite, $imageIds, 'cart_default')|escape:'html':'UTF-8'}" alt="{$imageTitle}" title="{$imageTitle}" height="{$cartSize.height}" width="{$cartSize.width}" itemprop="image" />
                                    </a>
                                </li>
                            {/foreach}
                        {/if}
                        </ul>
                    </div> <!-- end thumbs_list -->
                    {if isset($images) && count($images) > 4}
                        <a id="view_scroll_right" title="{l s='Other views'}" href="javascript:{ldelim}{rdelim}">
                            {l s='Next'}
                        </a>
                    {/if}
                </div> <!-- end views-block -->
                <!-- end thumbnails -->
            {/if}
            {if isset($images) && count($images) > 1}
                <p class="resetimg clear no-print">
                    <span id="wrapResetImages" style="display: none;">
                        <a href="{$link->getProductLink($product)|escape:'html':'UTF-8'}" name="resetImages">
                            <i class="icon-repeat"></i>
                            {l s='Display all pictures'}
                        </a>
                    </span>
                </p>
            {/if}
        </div> <!-- end pb-left-column -->
        <!-- end left infos-->
        <!-- center infos -->
        <div class="pb-center-column col-xs-12 col-sm-4">
            {if $product->online_only}
                <p class="online_only">{l s='Online only'}</p>
            {/if}
    
            <h1 itemprop="name">{$product->name|escape:'html':'UTF-8'}</h1>
            <p id="product_reference"{if empty($product->reference) || !$product->reference} style="display: none;"{/if}>
                <label>{l s='Model'} </label>
                <span class="editable" itemprop="sku">{if !isset($groups)}{$product->reference|escape:'html':'UTF-8'}{/if}</span>
            </p>
            {capture name=condition}
                {if $product->condition == 'new'}{l s='New'}
                {elseif $product->condition == 'used'}{l s='Used'}
                {elseif $product->condition == 'refurbished'}{l s='Refurbished'}
                {/if}
            {/capture}
            <p id="product_condition"{if !$product->condition} style="display: none;"{/if}>
                <label>{l s='Condition'} </label>
                <span class="editable" itemprop="condition">{$smarty.capture.condition}</span>
            </p>
            {if $product->description_short || $packItems|@count > 0}
                <div id="short_description_block">
                    {if $product->description_short}
                        <div id="short_description_content" class="rte align_justify" itemprop="description">{$product->description_short}</div>
                    {/if}

                    {if $product->description}
                        <p class="buttons_bottom_block">
                            <a href="javascript:{ldelim}{rdelim}" class="button">
                                {l s='More details'}
                            </a>
                        </p>
                    {/if}
                    <!--{if $packItems|@count > 0}
                        <div class="short_description_pack">
                        <h3>{l s='Pack content'}</h3>
                            {foreach from=$packItems item=packItem}
                            
                            <div class="pack_content">
                                {$packItem.pack_quantity} x <a href="{$link->getProductLink($packItem.id_product, $packItem.link_rewrite, $packItem.category)|escape:'html':'UTF-8'}">{$packItem.name|escape:'html':'UTF-8'}</a>
                                <p>{$packItem.description_short}</p>
                            </div>
                            {/foreach}
                        </div>
                    {/if}-->
                </div> <!-- end short_description_block -->
            {/if}
            {if ($display_qties == 1 && !$PS_CATALOG_MODE && $PS_STOCK_MANAGEMENT && $product->available_for_order)}
                <!-- number of item in stock -->
                <p id="pQuantityAvailable"{if $product->quantity <= 0} style="display: none;"{/if}>
                    <span id="quantityAvailable">{$product->quantity|intval}</span>
                    <span {if $product->quantity > 1} style="display: none;"{/if} id="quantityAvailableTxt">{l s='Item'}</span>
                    <span {if $product->quantity == 1} style="display: none;"{/if} id="quantityAvailableTxtMultiple">{l s='Items'}</span>
                </p>
            {/if}
            {if $PS_STOCK_MANAGEMENT}
                <!-- availability -->
                <p id="availability_statut"{if ($product->quantity <= 0 && !$product->available_later && $allow_oosp) || ($product->quantity > 0 && !$product->available_now) || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}>
                    {*<span id="availability_label">{l s='Availability:'}</span>*}
                    <span id="availability_value"{if $product->quantity <= 0} class="warning_inline"{/if}>{if $product->quantity <= 0}{if $allow_oosp}{$product->available_later}{else}{l s='This product is no longer in stock'}{/if}{else}{$product->available_now}{/if}</span>                
                </p>
                <p class="warning_inline" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >{l s='Warning: Last items in stock!'}</p>
            {/if}
            <p id="availability_date"{if ($product->quantity > 0) || !$product->available_for_order || $PS_CATALOG_MODE || !isset($product->available_date) || $product->available_date < $smarty.now|date_format:'%Y-%m-%d'} style="display: none;"{/if}>
                <span id="availability_date_label">{l s='Availability date:'}</span>
                <span id="availability_date_value">{dateFormat date=$product->available_date full=false}</span>
            </p>
            <!-- Out of stock hook -->
            <div id="oosHook"{if $product->quantity > 0} style="display: none;"{/if}>
                {$HOOK_PRODUCT_OOS}
            </div>
            {if isset($HOOK_EXTRA_RIGHT) && $HOOK_EXTRA_RIGHT}{$HOOK_EXTRA_RIGHT}{/if}
            {if !$content_only}
                <!-- usefull links-->
                <ul id="usefull_link_block" class="clearfix no-print">
                    {if $HOOK_EXTRA_LEFT}{$HOOK_EXTRA_LEFT}{/if}
                    {*<li class="print">
                        <a href="javascript:print();">
                            {l s='Print'}
                        </a>
                    </li>*}
                    {if $have_image && !$jqZoomEnabled}{/if}
                </ul>
            {/if}
        </div>
        <!-- end center infos-->
        <!-- pb-right-column-->
        <div class="pb-right-column col-xs-12 col-sm-4 col-md-3">
            {if ($product->show_price && !isset($restricted_country_mode)) || isset($groups) || $product->reference || (isset($HOOK_PRODUCT_ACTIONS) && $HOOK_PRODUCT_ACTIONS)}
            <!-- add to cart form-->
            <form id="buy_block"{if $PS_CATALOG_MODE && !isset($groups) && $product->quantity > 0} class="hidden"{/if} action="{$link->getPageLink('cart')|escape:'html':'UTF-8'}" method="post">
                <!-- hidden datas -->
                <p class="hidden">
                    <input type="hidden" name="token" value="{$static_token}" />
                    <input type="hidden" name="id_product" value="{$product->id|intval}" id="product_page_product_id" />
                    <input type="hidden" name="add" value="1" />
                    <input type="hidden" name="id_product_attribute" id="idCombination" value="" />
                </p>
                <div class="box-info-product">
                    <div class="content_prices clearfix">
                        {if $product->show_price && !isset($restricted_country_mode) && !$PS_CATALOG_MODE}
                            <!-- prices -->
                            <div class="price">
                                <p class="our_price_display" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
                                    {if $product->quantity > 0}<link itemprop="availability" href="http://schema.org/InStock"/>{/if}
                                    {if $priceDisplay >= 0 && $priceDisplay <= 2}
                                        <span id="our_price_display" itemprop="price">{convertPrice price=$productPrice}</span>
                                        <!--{if $tax_enabled  && ((isset($display_tax_label) && $display_tax_label == 1) || !isset($display_tax_label))}
                                            {if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}
                                        {/if}-->
                                        <meta itemprop="priceCurrency" content="{$currency->iso_code}" />
                                    {/if}
                                </p>
                                <p id="reduction_percent" {if !$product->specificPrice || $product->specificPrice.reduction_type != 'percentage'} style="display:none;"{/if}>
                                    <span id="reduction_percent_display">
                                        {if $product->specificPrice && $product->specificPrice.reduction_type == 'percentage'}-{$product->specificPrice.reduction*100}%{/if}
                                    </span>
                                </p>
                                <p id="old_price"{if (!$product->specificPrice || !$product->specificPrice.reduction) && $group_reduction == 0} class="hidden"{/if}>
                                    {if $priceDisplay >= 0 && $priceDisplay <= 2}
                                        <span id="old_price_display">{if $productPriceWithoutReduction > $productPrice}{convertPrice price=$productPriceWithoutReduction}{/if}</span>
                                        <!-- {if $tax_enabled && $display_tax_label == 1}{if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}{/if} -->
                                    {/if}
                                </p>
                                {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}
                            </div> <!-- end prices -->
                            <p id="reduction_amount" {if !$product->specificPrice || $product->specificPrice.reduction_type != 'amount' || $product->specificPrice.reduction|floatval ==0} style="display:none"{/if}>
                                <span id="reduction_amount_display">
                                {if $product->specificPrice && $product->specificPrice.reduction_type == 'amount' && $product->specificPrice.reduction|intval !=0}
                                    -{convertPrice price=$productPriceWithoutReduction-$productPrice|floatval}
                                {/if}
                                </span>
                            </p>
                            {if $packItems|@count && $productPrice < $product->getNoPackPrice()}
                                <p class="pack_price">{l s='Instead of'} <span style="text-decoration: line-through;">{convertPrice price=$product->getNoPackPrice()}</span></p>
                            {/if}
                            {if $product->ecotax != 0}
                                <p class="price-ecotax">{l s='Include'} <span id="ecotax_price_display">{if $priceDisplay == 2}{$ecotax_tax_exc|convertAndFormatPrice}{else}{$ecotax_tax_inc|convertAndFormatPrice}{/if}</span> {l s='For green tax'}
                                    {if $product->specificPrice && $product->specificPrice.reduction}
                                    <br />{l s='(not impacted by the discount)'}
                                    {/if}
                                </p>
                            {/if}
                            {if !empty($product->unity) && $product->unit_price_ratio > 0.000000}
                                {math equation="pprice / punit_price"  pprice=$productPrice  punit_price=$product->unit_price_ratio assign=unit_price}
                                <p class="unit-price"><span id="unit_price_display">{convertPrice price=$unit_price}</span> {l s='per'} {$product->unity|escape:'html':'UTF-8'}</p>
                            {/if}
                        {/if} {*close if for show price*}
                        <div class="clear"></div>
                    </div> <!-- end content_prices -->
                    <div class="product_attributes clearfix">
                        <!-- quantity wanted -->
                        {if !$PS_CATALOG_MODE}
                        <p id="quantity_wanted_p"{if (!$allow_oosp && $product->quantity <= 0) || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}>
                            <label>{l s='Quantity:'}</label>
                            <input type="text" name="qty" id="quantity_wanted" class="text" value="{if isset($quantityBackup)}{$quantityBackup|intval}{else}{if $product->minimal_quantity > 1}{$product->minimal_quantity}{else}1{/if}{/if}" />
                            <a href="#" data-field-qty="qty" class="btn btn-default button-minus product_quantity_down">
                                <span><i class="icon-minus"></i></span>
                            </a>
                            <a href="#" data-field-qty="qty" class="btn btn-default button-plus product_quantity_up ">
                                <span><i class="icon-plus"></i></span>
                            </a>
                            <span class="clearfix"></span>
                        </p>
                        {/if}
                        <!-- minimal quantity wanted -->
                        <p id="minimal_quantity_wanted_p"{if $product->minimal_quantity <= 1 || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}>
                            {l s='This product is not sold individually. You must select at least'} <b id="minimal_quantity_label">{$product->minimal_quantity}</b> {l s='quantity for this product.'}
                        </p>
                        {if isset($groups)}
                            <!-- attributes -->
                            <div id="attributes">
                                <div class="clearfix"></div>
                                {foreach from=$groups key=id_attribute_group item=group}
                                    {if $group.attributes|@count}
                                        <fieldset class="attribute_fieldset">
                                            <label class="attribute_label" {if $group.group_type != 'color' && $group.group_type != 'radio'}for="group_{$id_attribute_group|intval}"{/if}>{$group.name|escape:'html':'UTF-8'} : </label>
                                            {assign var="groupName" value="group_$id_attribute_group"}
                                            <div class="attribute_list">
                                                {if ($group.group_type == 'select')}
                                                    <select name="{$groupName}" id="group_{$id_attribute_group|intval}" class="form-control attribute_select no-print">
                                                        {foreach from=$group.attributes key=id_attribute item=group_attribute}
                                                            <option value="{$id_attribute|intval}"{if (isset($smarty.get.$groupName) && $smarty.get.$groupName|intval == $id_attribute) || $group.default == $id_attribute} selected="selected"{/if} title="{$group_attribute|escape:'html':'UTF-8'}">{$group_attribute|escape:'html':'UTF-8'}</option>
                                                        {/foreach}
                                                    </select>
                                                {elseif ($group.group_type == 'color')}
                                                    <ul id="color_to_pick_list" class="clearfix">
                                                        {assign var="default_colorpicker" value=""}
                                                        {foreach from=$group.attributes key=id_attribute item=group_attribute}
                                                            <li{if $group.default == $id_attribute} class="selected"{/if}>
                                                                <a href="{$link->getProductLink($product)|escape:'html':'UTF-8'}" id="color_{$id_attribute|intval}" name="{$colors.$id_attribute.name|escape:'html':'UTF-8'}" class="color_pick{if ($group.default == $id_attribute)} selected{/if}" style="background: {$colors.$id_attribute.value|escape:'html':'UTF-8'};" title="{$colors.$id_attribute.name|escape:'html':'UTF-8'}">
                                                                    {if file_exists($col_img_dir|cat:$id_attribute|cat:'.jpg')}
                                                                        <img src="{$img_col_dir}{$id_attribute|intval}.jpg" alt="{$colors.$id_attribute.name|escape:'html':'UTF-8'}" width="20" height="20" />
                                                                    {/if}
                                                                </a>
                                                            </li>
                                                            {if ($group.default == $id_attribute)}
                                                                {$default_colorpicker = $id_attribute}
                                                            {/if}
                                                        {/foreach}
                                                    </ul>
                                                    <input type="hidden" class="color_pick_hidden" name="{$groupName|escape:'html':'UTF-8'}" value="{$default_colorpicker|intval}" />
                                                {elseif ($group.group_type == 'radio')}
                                                    <ul>
                                                        {foreach from=$group.attributes key=id_attribute item=group_attribute}
                                                            <li>
                                                                <input type="radio" class="attribute_radio" name="{$groupName|escape:'html':'UTF-8'}" value="{$id_attribute}" {if ($group.default == $id_attribute)} checked="checked"{/if} />
                                                                <span>{$group_attribute|escape:'html':'UTF-8'}</span>
                                                            </li>
                                                        {/foreach}
                                                    </ul>
                                                {/if}
                                            </div> <!-- end attribute_list -->
                                        </fieldset>
                                    {/if}
                                {/foreach}
                            </div> <!-- end attributes -->
                        {/if}
                    </div> <!-- end product_attributes -->
                    <div class="box-cart-bottom">
                        <div{if (!$allow_oosp && $product->quantity <= 0) || !$product->available_for_order || (isset($restricted_country_mode) && $restricted_country_mode) || $PS_CATALOG_MODE} class="unvisible"{/if}>
                            <p id="add_to_cart" class="buttons_bottom_block no-print">
                                <button type="submit" name="Submit" class="exclusive">
                                    <span>{l s='Comprar'}</span>
                                </button>
                            </p>
                        </div>
                        {if isset($HOOK_PRODUCT_ACTIONS) && $HOOK_PRODUCT_ACTIONS}{$HOOK_PRODUCT_ACTIONS}{/if}<strong></strong>
                    </div> <!-- end box-cart-bottom -->
                </div> <!-- end box-info-product -->
            </form>
            {/if}
        </div> <!-- end pb-right-column-->
    </div> <!-- end primary_block -->
    {if !$content_only}
{if (isset($quantity_discounts) && count($quantity_discounts) > 0)}
            <!-- quantity discount -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='Volume discounts'}</h3>
                <div id="quantityDiscount">
                    <table class="std table-product-discounts">
                        <thead>
                            <tr>
                                <th>{l s='Quantity'}</th>
                                <th>{if $display_discount_price}{l s='Price'}{else}{l s='Discount'}{/if}</th>
                                <th>{l s='You Save'}</th>
                            </tr>
                        </thead>
                        <tbody>
                            {foreach from=$quantity_discounts item='quantity_discount' name='quantity_discounts'}
                            <tr id="quantityDiscount_{$quantity_discount.id_product_attribute}" class="quantityDiscount_{$quantity_discount.id_product_attribute}" data-discount-type="{$quantity_discount.reduction_type}" data-discount="{$quantity_discount.real_value|floatval}" data-discount-quantity="{$quantity_discount.quantity|intval}">
                                <td>
                                    {$quantity_discount.quantity|intval}
                                </td>
                                <td>
                                    {if $quantity_discount.price >= 0 || $quantity_discount.reduction_type == 'amount'}
                                        {if $display_discount_price}
                                            {convertPrice price=$productPrice-$quantity_discount.real_value|floatval}
                                        {else}
                                            {convertPrice price=$quantity_discount.real_value|floatval}
                                        {/if}
                                    {else}
                                        {if $display_discount_price}
                                            {convertPrice price = $productPrice-($productPrice*$quantity_discount.reduction)|floatval}
                                        {else}
                                            {$quantity_discount.real_value|floatval}%
                                        {/if}
                                    {/if}
                                </td>
                                <td>
                                    <span>{l s='Up to'}</span>
                                    {if $quantity_discount.price >= 0 || $quantity_discount.reduction_type == 'amount'}
                                        {$discountPrice=$productPrice-$quantity_discount.real_value|floatval}
                                    {else}
                                        {$discountPrice=$productPrice-($productPrice*$quantity_discount.reduction)|floatval}
                                    {/if}
                                    {$discountPrice=$discountPrice*$quantity_discount.quantity}
                                    {$qtyProductPrice = $productPrice*$quantity_discount.quantity}
                                    {convertPrice price=$qtyProductPrice-$discountPrice}
                                </td>
                            </tr>
                            {/foreach}
                        </tbody>
                    </table>
                </div>
            </section>
        {/if}
        {if isset($features) && $features}
            <!-- Data sheet -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='Data sheet'}</h3>
                <table class="table-data-sheet">            
                    {foreach from=$features item=feature}
                    <tr class="{cycle values="odd,even"}">
                        {if isset($feature.value)}                
                        <td>{$feature.name|escape:'html':'UTF-8'}</td>
                        <td>{$feature.value|escape:'html':'UTF-8'}</td>
                        {/if}
                    </tr>
                    {/foreach}
                </table>
            </section>
            <!--end Data sheet -->
        {/if}
        {if $product->description}
            <!-- More info -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='More info'}</h3>{/if}
                {if isset($product) && $product->description}
                    <!-- full description -->
                    <div  class="rte">{$product->description}</div>
            </section>
            <!--end  More info -->
        {/if}
        <!--HOOK_PRODUCT_TAB -->
        <section class="page-product-box">
            {$HOOK_PRODUCT_TAB}
            {if isset($HOOK_PRODUCT_TAB_CONTENT) && $HOOK_PRODUCT_TAB_CONTENT}{$HOOK_PRODUCT_TAB_CONTENT}{/if}
        </section>
        <!--end HOOK_PRODUCT_TAB -->
        {if isset($accessories) && $accessories}
            <!--Accessories -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='Accessories'}</h3>
                <div class="block products_block accessories-block clearfix">
                    <div class="block_content">
                        <ul id="bxslider" class="bxslider clearfix">
                            {foreach from=$accessories item=accessory name=accessories_list}
                                {if ($accessory.allow_oosp || $accessory.quantity_all_versions > 0 || $accessory.quantity > 0) && $accessory.available_for_order && !isset($restricted_country_mode)}
                                    {assign var='accessoryLink' value=$link->getProductLink($accessory.id_product, $accessory.link_rewrite, $accessory.category)}
                                    <li class="item product-box ajax_block_product{if $smarty.foreach.accessories_list.first} first_item{elseif $smarty.foreach.accessories_list.last} last_item{else} item{/if} product_accessories_description">
                                        <div class="product_desc">
                                            <a href="{$accessoryLink|escape:'html':'UTF-8'}" title="{$accessory.legend|escape:'html':'UTF-8'}" class="product-image product_image">
                                                <img class="lazyOwl" src="{$link->getImageLink($accessory.link_rewrite, $accessory.id_image, 'home_default')|escape:'html':'UTF-8'}" alt="{$accessory.legend|escape:'html':'UTF-8'}" width="{$homeSize.width}" height="{$homeSize.height}"/>
                                            </a>
                                            <div class="block_description">
                                                <a href="{$accessoryLink|escape:'html':'UTF-8'}" title="{l s='More'}" class="product_description">
                                                    {$accessory.description_short|strip_tags|truncate:25:'...'}
                                                </a>
                                            </div>
                                        </div>
                                        <div class="s_title_block">
                                            <h5 class="product-name">
                                                <a href="{$accessoryLink|escape:'html':'UTF-8'}">
                                                    {$accessory.name|truncate:20:'...':true|escape:'html':'UTF-8'}
                                                </a>
                                            </h5>
                                            {if $accessory.show_price && !isset($restricted_country_mode) && !$PS_CATALOG_MODE}
                                            <span class="price">
                                                {if $priceDisplay != 1}
                                                {displayWtPrice p=$accessory.price}{else}{displayWtPrice p=$accessory.price_tax_exc}
                                                {/if}
                                            </span>
                                            {/if}
                                        </div>
                                        <div class="clearfix" style="margin-top:5px">
                                            {if !$PS_CATALOG_MODE && ($accessory.allow_oosp || $accessory.quantity > 0)}
                                                <div class="no-print">
                                                    <a class="exclusive button ajax_add_to_cart_button" href="{$link->getPageLink('cart', true, NULL, "qty=1&id_product={$accessory.id_product|intval}&token={$static_token}&add")|escape:'html':'UTF-8'}" data-id-product="{$accessory.id_product|intval}" title="{l s='Comprar'}">
                                                        <span>{l s='Comprar'}</span>
                                                    </a>
                                                </div>
                                            {/if}
                                        </div>
                                    </li>
                                {/if}
                            {/foreach}
                        </ul>
                    </div>
                </div>    
            </section>
            <!--end Accessories -->
        {/if}
        {if isset($HOOK_PRODUCT_FOOTER) && $HOOK_PRODUCT_FOOTER}{$HOOK_PRODUCT_FOOTER}{/if}
        <!-- description & features -->
        {if (isset($product) && $product->description) || (isset($features) && $features) || (isset($accessories) && $accessories) || (isset($HOOK_PRODUCT_TAB) && $HOOK_PRODUCT_TAB) || (isset($attachments) && $attachments) || isset($product) && $product->customizable}
            {if isset($attachments) && $attachments}
            <!--Download -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='Download'}</h3>
                {foreach from=$attachments item=attachment name=attachements}
                    {if $smarty.foreach.attachements.iteration %3 == 1}<div class="row">{/if}
                        <div class="col-lg-4">
                            <h4><a href="{$link->getPageLink('attachment', true, NULL, "id_attachment={$attachment.id_attachment}")|escape:'html':'UTF-8'}">{$attachment.name|escape:'html':'UTF-8'}</a></h4>
                            <p class="text-muted">{$attachment.description|escape:'html':'UTF-8'}</p>
                            <a class="btn btn-default btn-block" href="{$link->getPageLink('attachment', true, NULL, "id_attachment={$attachment.id_attachment}")|escape:'html':'UTF-8'}">
                                <i class="icon-download"></i>
                                {l s="Download"} ({Tools::formatBytes($attachment.file_size, 2)})
                            </a>
                            <hr>
                        </div>
                    {if $smarty.foreach.attachements.iteration %3 == 0 || $smarty.foreach.attachements.last}</div>{/if}
                {/foreach}
            </section>
            <!--end Download -->
            {/if}
            {if isset($product) && $product->customizable}
            <!--Customization -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='Product customization'}</h3>
                <!-- Customizable products -->
                <form method="post" action="{$customizationFormTarget}" enctype="multipart/form-data" id="customizationForm" class="clearfix">
                    <p class="infoCustomizable">
                        {l s='After saving your customized product, remember to add it to your cart.'}
                        {if $product->uploadable_files}
                        <br />
                        {l s='Allowed file formats are: GIF, JPG, PNG'}{/if}
                    </p>
                    {if $product->uploadable_files|intval}
                        <div class="customizableProductsFile">
                            <h5 class="product-heading-h5">{l s='Pictures'}</h5>
                            <ul id="uploadable_files" class="clearfix">
                                {counter start=0 assign='customizationField'}
                                {foreach from=$customizationFields item='field' name='customizationFields'}
                                    {if $field.type == 0}
                                        <li class="customizationUploadLine{if $field.required} required{/if}">{assign var='key' value='pictures_'|cat:$product->id|cat:'_'|cat:$field.id_customization_field}
                                            {if isset($pictures.$key)}
                                                <div class="customizationUploadBrowse">
                                                    <img src="{$pic_dir}{$pictures.$key}_small" alt="" />
                                                        <a href="{$link->getProductDeletePictureLink($product, $field.id_customization_field)|escape:'html':'UTF-8'}" title="{l s='Delete'}" >
                                                            <img src="{$img_dir}icon/delete.gif" alt="{l s='Delete'}" class="customization_delete_icon" width="11" height="13" />
                                                        </a>
                                                </div>
                                            {/if}
                                            <div class="customizationUploadBrowse form-group">
                                                <label class="customizationUploadBrowseDescription">
                                                    {if !empty($field.name)}
                                                        {$field.name}
                                                    {else}
                                                        {l s='Please select an image file from your computer'}
                                                    {/if}
                                                    {if $field.required}<sup>*</sup>{/if}
                                                </label>
                                                <input type="file" name="file{$field.id_customization_field}" id="img{$customizationField}" class="form-control customization_block_input {if isset($pictures.$key)}filled{/if}" />
                                            </div>
                                        </li>
                                        {counter}
                                    {/if}
                                {/foreach}
                            </ul>
                        </div>
                    {/if}
                    {if $product->text_fields|intval}
                        <div class="customizableProductsText">
                            <h5 class="product-heading-h5">{l s='Text'}</h5>
                            <ul id="text_fields">
                            {counter start=0 assign='customizationField'}
                            {foreach from=$customizationFields item='field' name='customizationFields'}
                                {if $field.type == 1}
                                    <li class="customizationUploadLine{if $field.required} required{/if}">
                                        <label for ="textField{$customizationField}">
                                            {assign var='key' value='textFields_'|cat:$product->id|cat:'_'|cat:$field.id_customization_field}
                                            {if !empty($field.name)}
                                                {$field.name}
                                            {/if}
                                            {if $field.required}<sup>*</sup>{/if}
                                        </label>
                                        <textarea name="textField{$field.id_customization_field}" class="form-control customization_block_input" id="textField{$customizationField}" rows="3" cols="20">{strip}
                                            {if isset($textFields.$key)}
                                                {$textFields.$key|stripslashes}
                                            {/if}
                                        {/strip}</textarea>
                                    </li>
                                    {counter}
                                {/if}
                            {/foreach}
                            </ul>
                        </div>
                    {/if}
                    <p id="customizedDatas">
                        <input type="hidden" name="quantityBackup" id="quantityBackup" value="" />
                        <input type="hidden" name="submitCustomizedDatas" value="1" />
                        <button class="button btn btn-default button button-small" name="saveCustomization">
                            <span>{l s='Save'}</span>
                        </button>
                        <span id="ajax-loader" class="unvisible">
                            <img src="{$img_ps_dir}loader.gif" alt="loader" />
                        </span>
                    </p>
                </form>
                <p class="clear required"><sup>*</sup> {l s='required fields'}</p>    
            </section>
            <!--end Customization -->
            {/if}
        {/if}
        {if isset($packItems) && $packItems|@count > 0}
        <section id="blockpack">
            <h3 class="page-product-heading">{l s='Pack content'}</h3>
            {include file="$tpl_dir./product-list.tpl" products=$packItems}
        </section>
        {/if}
    {/if}
{strip}
{strip}
{if isset($smarty.get.ad) && $smarty.get.ad}
{addJsDefL name=ad}{$base_dir|cat:$smarty.get.ad|escape:'html':'UTF-8'}{/addJsDefL}
{/if}
{if isset($smarty.get.adtoken) && $smarty.get.adtoken}
{addJsDefL name=adtoken}{$smarty.get.adtoken|escape:'html':'UTF-8'}{/addJsDefL}
{/if}
{addJsDef allowBuyWhenOutOfStock=$allow_oosp|boolval}
{addJsDef availableNowValue=$product->available_now|escape:'quotes':'UTF-8'}
{addJsDef availableLaterValue=$product->available_later|escape:'quotes':'UTF-8'}
{addJsDef attribute_anchor_separator=$attribute_anchor_separator|addslashes}
{addJsDef attributesCombinations=$attributesCombinations}
{addJsDef currencySign=$currencySign|html_entity_decode:2:"UTF-8"}
{addJsDef currencyRate=$currencyRate|floatval}
{addJsDef currencyFormat=$currencyFormat|intval}
{addJsDef currencyBlank=$currencyBlank|intval}
{addJsDef currentDate=$smarty.now|date_format:'%Y-%m-%d %H:%M:%S'}
{if isset($combinations) && $combinations}
    {addJsDef combinations=$combinations}
    {addJsDef combinationsFromController=$combinations}
    {addJsDef displayDiscountPrice=$display_discount_price}
    {addJsDefL name='upToTxt'}{l s='Up to' js=1}{/addJsDefL}
{/if}
{if isset($combinationImages) && $combinationImages}
    {addJsDef combinationImages=$combinationImages}
{/if}
{addJsDef customizationFields=$customizationFields}
{addJsDef default_eco_tax=$product->ecotax|floatval}
{addJsDef displayPrice=$priceDisplay|intval}
{addJsDef ecotaxTax_rate=$ecotaxTax_rate|floatval}
{addJsDef group_reduction=$group_reduction}
{if isset($cover.id_image_only)}
    {addJsDef idDefaultImage=$cover.id_image_only|intval}
{else}
    {addJsDef idDefaultImage=0}
{/if}
{addJsDef img_ps_dir=$img_ps_dir}
{addJsDef img_prod_dir=$img_prod_dir}
{addJsDef id_product=$product->id|intval}
{addJsDef jqZoomEnabled=$jqZoomEnabled|boolval}
{addJsDef maxQuantityToAllowDisplayOfLastQuantityMessage=$last_qties|intval}
{addJsDef minimalQuantity=$product->minimal_quantity|intval}
{addJsDef noTaxForThisProduct=$no_tax|boolval}
{addJsDef oosHookJsCodeFunctions=Array()}
{addJsDef productHasAttributes=isset($groups)|boolval}
{addJsDef productPriceTaxExcluded=($product->getPriceWithoutReduct(true)|default:'null' - $product->ecotax)|floatval}
{addJsDef productBasePriceTaxExcluded=($product->base_price - $product->ecotax)|floatval}
{addJsDef productReference=$product->reference|escape:'html':'UTF-8'}
{addJsDef productAvailableForOrder=$product->available_for_order|boolval}
{addJsDef productPriceWithoutReduction=$productPriceWithoutReduction|floatval}
{addJsDef productPrice=$productPrice|floatval}
{addJsDef productUnitPriceRatio=$product->unit_price_ratio|floatval}
{addJsDef productShowPrice=(!$PS_CATALOG_MODE && $product->show_price)|boolval}
{addJsDef PS_CATALOG_MODE=$PS_CATALOG_MODE}
{if $product->specificPrice && $product->specificPrice|@count}
    {addJsDef product_specific_price=$product->specificPrice}
{else}
    {addJsDef product_specific_price=array()}
{/if}
{if $display_qties == 1 && $product->quantity}
    {addJsDef quantityAvailable=$product->quantity}
{else}
    {addJsDef quantityAvailable=0}
{/if}
{addJsDef quantitiesDisplayAllowed=$display_qties|boolval}
{if $product->specificPrice && $product->specificPrice.reduction && $product->specificPrice.reduction_type == 'percentage'}
    {addJsDef reduction_percent=$product->specificPrice.reduction*100|floatval}
{else}
    {addJsDef reduction_percent=0}
{/if}
{if $product->specificPrice && $product->specificPrice.reduction && $product->specificPrice.reduction_type == 'amount'}
    {addJsDef reduction_price=$product->specificPrice.reduction|floatval}
{else}
    {addJsDef reduction_price=0}
{/if}
{if $product->specificPrice && $product->specificPrice.price}
    {addJsDef specific_price=$product->specificPrice.price|floatval}
{else}
    {addJsDef specific_price=0}
{/if}
{addJsDef specific_currency=($product->specificPrice && $product->specificPrice.id_currency)|boolval} {* TODO: remove if always false *}
{addJsDef stock_management=$stock_management|intval}
{addJsDef taxRate=$tax_rate|floatval}
{addJsDefL name=doesntExist}{l s='This combination does not exist for this product. Please select another combination.' js=1}{/addJsDefL}
{addJsDefL name=doesntExistNoMore}{l s='This product is no longer in stock' js=1}{/addJsDefL}
{addJsDefL name=doesntExistNoMoreBut}{l s='with those attributes but is available with others.' js=1}{/addJsDefL}
{addJsDefL name=fieldRequired}{l s='Please fill in all the required fields before saving your customization.' js=1}{/addJsDefL}
{addJsDefL name=uploading_in_progress}{l s='Uploading in progress, please be patient.' js=1}{/addJsDefL}
{/strip}
{/if}
 

Link to comment
Share on other sites

Te pego tal cual el archivo ya con las modificaciones:

{*
* 2007-2014 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.or...ses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to [email protected] so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
*  @author PrestaShop SA <[email protected]>
*  @copyright  2007-2014 PrestaShop SA
*  @license    http://opensource.or...ses/afl-3.0.php  Academic Free License (AFL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*}
{include file="$tpl_dir./errors.tpl"}
{if $errors|@count == 0}
    {if !isset($priceDisplayPrecision)}
        {assign var='priceDisplayPrecision' value=2}
    {/if}
    {if !$priceDisplay || $priceDisplay == 2}
        {assign var='productPrice' value=$product->getPrice(true, $smarty.const.NULL, $priceDisplayPrecision)}
        {assign var='productPriceWithoutReduction' value=$product->getPriceWithoutReduct(false, $smarty.const.NULL)}
    {elseif $priceDisplay == 1}
        {assign var='productPrice' value=$product->getPrice(false, $smarty.const.NULL, $priceDisplayPrecision)}
        {assign var='productPriceWithoutReduction' value=$product->getPriceWithoutReduct(true, $smarty.const.NULL)}
    {/if}
    <div class="primary_block row" itemscope itemtype="http://schema.org/Product">
        {if !$content_only}
            <div class="container">
                <div class="top-hr"></div>
            </div>
        {/if}
        {if isset($adminActionDisplay) && $adminActionDisplay}
            <div id="admin-action">
                <p>{l s='This product is not visible to your customers.'}
                    <input type="hidden" id="admin-action-product-id" value="{$product->id}" />
                    <input type="submit" value="{l s='Publish'}" name="publish_button" class="exclusive" />
                    <input type="submit" value="{l s='Back'}" name="lnk_view" class="exclusive" />
                </p>
                <p id="admin-action-result"></p>
            </div>
        {/if}
        {if isset($confirmation) && $confirmation}
            <p class="confirmation">
                {$confirmation}
            </p>
        {/if}
        <!-- left infos-->  
        <div class="pb-left-column col-xs-12 col-sm-4 col-md-5">
            <!-- product img-->        
            <div id="image-block" class="clearfix">
                {if $product->new}
                    <span class="new-box">
                        <span class="new-label">{l s='New'}</span>
                    </span>
                {/if}
                {if $product->on_sale}
                    <span class="sale-box no-print">
                        <span class="sale-label">{l s='Sale!'}</span>
                    </span>
                {elseif $product->specificPrice && $product->specificPrice.reduction && $productPriceWithoutReduction > $productPrice}
                    <span class="discount">{l s='Reduced price!'}</span>
                {/if}
                {if $have_image}
                    <span id="view_full_size">
                        {if $jqZoomEnabled && $have_image && !$content_only}
                            <a class="jqzoom" title="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" rel="gal1" href="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'thickbox_default')|escape:'html':'UTF-8'}" itemprop="url">
                                <img itemprop="image" src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large_default')|escape:'html':'UTF-8'}" title="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" alt="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}"/>
                            </a>
                        {else}
                            <img id="bigpic" itemprop="image" src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large_default')|escape:'html':'UTF-8'}" title="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" alt="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" width="{$largeSize.width}" height="{$largeSize.height}"/>
                            {if !$content_only}
                                <span class="span_link no-print">{l s='View larger'}</span>
                            {/if}
                        {/if}
                    </span>
                {else}
                    <span id="view_full_size">
                        <img itemprop="image" src="{$img_prod_dir}{$lang_iso}-default-large_default.jpg" id="bigpic" alt="" title="{$product->name|escape:'html':'UTF-8'}" width="{$largeSize.width}" height="{$largeSize.height}"/>
                        {if !$content_only}
                            <span class="span_link">
                                {l s='View larger'}
                            </span>
                        {/if}
                    </span>
                {/if}
            </div> <!-- end image-block -->
            {if isset($images) && count($images) > 0}
                <!-- thumbnails -->
                <div id="views_block" class="clearfix {if isset($images) && count($images) < 2}hidden{/if}">
                    {if isset($images) && count($images) > 4}
                        <span class="view_scroll_spacer">
                            <a id="view_scroll_left" class="" title="{l s='Other views'}" href="javascript:{ldelim}{rdelim}">
                                {l s='Previous'}
                            </a>
                        </span>
                    {/if}
                    <div id="thumbs_list">
                        <ul id="thumbs_list_frame">
                        {if isset($images)}
                            {foreach from=$images item=image name=thumbnails}
                                {assign var=imageIds value="`$product->id`-`$image.id_image`"}
                                {if !empty($image.legend)}
                                    {assign var=imageTitle value=$image.legend|escape:'html':'UTF-8'}
                                {else}
                                    {assign var=imageTitle value=$product->name|escape:'html':'UTF-8'}
                                {/if}
                                <li id="thumbnail_{$image.id_image}"{if $smarty.foreach.thumbnails.last} class="last"{/if}>
                                    <a
                                        {if $jqZoomEnabled && $have_image && !$content_only}
                                            href="javascript:void(0);"
                                            rel="{literal}[spam-filter]/literal}gallery: 'gal1', smallimage: '{$link->getImageLink($product->link_rewrite, $imageIds, 'large_default')|escape:'html':'UTF-8'}',largeimage: '{$link->getImageLink($product->link_rewrite, $imageIds, 'thickbox_default')|escape:'html':'UTF-8'}'{literal[spam-filter]{/literal}"
                                        {else}
                                            href="{$link->getImageLink($product->link_rewrite, $imageIds, 'thickbox_default')|escape:'html':'UTF-8'}"
                                            data-fancybox-group="other-views"
                                            class="fancybox{if $image.id_image == $cover.id_image} shown{/if}"
                                        {/if}
                                        title="{$imageTitle}">
                                        <img class="img-responsive" id="thumb_{$image.id_image}" src="{$link->getImageLink($product->link_rewrite, $imageIds, 'cart_default')|escape:'html':'UTF-8'}" alt="{$imageTitle}" title="{$imageTitle}" height="{$cartSize.height}" width="{$cartSize.width}" itemprop="image" />
                                    </a>
                                </li>
                            {/foreach}
                        {/if}
                        </ul>
                    </div> <!-- end thumbs_list -->
                    {if isset($images) && count($images) > 4}
                        <a id="view_scroll_right" title="{l s='Other views'}" href="javascript:{ldelim}{rdelim}">
                            {l s='Next'}
                        </a>
                    {/if}
                </div> <!-- end views-block -->
                <!-- end thumbnails -->
            {/if}
            {if isset($images) && count($images) > 1}
                <p class="resetimg clear no-print">
                    <span id="wrapResetImages" style="display: none;">
                        <a href="{$link->getProductLink($product)|escape:'html':'UTF-8'}" name="resetImages">
                            <i class="icon-repeat"></i>
                            {l s='Display all pictures'}
                        </a>
                    </span>
                </p>
            {/if}
        </div> <!-- end pb-left-column -->
        <!-- end left infos-->
        <!-- center infos -->
        <div class="pb-center-column col-xs-12 col-sm-4">
            {if $product->online_only}
                <p class="online_only">{l s='Online only'}</p>
            {/if}
    
            <h1 itemprop="name">{$product->name|escape:'html':'UTF-8'}</h1>
            <p id="product_reference"{if empty($product->reference) || !$product->reference} style="display: none;"{/if}>
                <label>{l s='Model'} </label>
                <span class="editable" itemprop="sku">{if !isset($groups)}{$product->reference|escape:'html':'UTF-8'}{/if}</span>
            </p>
			{if $product->condition}
			<p id="product_condition">
				<label>{l s='Condition'} </label>
				{if $product->condition == 'new'}
					<link itemprop="itemCondition" href="http://schema.org/NewCondition"/>
					<span class="editable">{l s='New'}</span>
				{elseif $product->condition == 'used'}
					<link itemprop="itemCondition" href="http://schema.org/UsedCondition"/>
					<span class="editable">{l s='Used'}</span>
				{elseif $product->condition == 'refurbished'}
					<link itemprop="itemCondition" href="http://schema.org/RefurbishedCondition"/>
					<span class="editable">{l s='Refurbished'}</span>
				{/if}
			</p>
			{/if}
            {if $product->description_short || $packItems|@count > 0}
                <div id="short_description_block">
                    {if $product->description_short}
                        <div id="short_description_content" class="rte align_justify">{$product->description_short}</div>
                    {/if}

        {if $product->description}
            <!-- More info -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='More info'}</h3>{/if}
                {if isset($product) && $product->description}
                    <!-- full description -->
                    <div itemprop="description" class="rte">{$product->description}</div>
            </section>
            <!--end  More info -->
        {/if}	
                    <!--{if $packItems|@count > 0}
                        <div class="short_description_pack">
                        <h3>{l s='Pack content'}</h3>
                            {foreach from=$packItems item=packItem}
                            
                            <div class="pack_content">
                                {$packItem.pack_quantity} x <a href="{$link->getProductLink($packItem.id_product, $packItem.link_rewrite, $packItem.category)|escape:'html':'UTF-8'}">{$packItem.name|escape:'html':'UTF-8'}</a>
                                <p>{$packItem.description_short}</p>
                            </div>
                            {/foreach}
                        </div>
                    {/if}-->
                </div> <!-- end short_description_block -->
            {/if}
            {if ($display_qties == 1 && !$PS_CATALOG_MODE && $PS_STOCK_MANAGEMENT && $product->available_for_order)}
                <!-- number of item in stock -->
                <p id="pQuantityAvailable"{if $product->quantity <= 0} style="display: none;"{/if}>
                    <span id="quantityAvailable">{$product->quantity|intval}</span>
                    <span {if $product->quantity > 1} style="display: none;"{/if} id="quantityAvailableTxt">{l s='Item'}</span>
                    <span {if $product->quantity == 1} style="display: none;"{/if} id="quantityAvailableTxtMultiple">{l s='Items'}</span>
                </p>
            {/if}
            {if $PS_STOCK_MANAGEMENT}
                <!-- availability -->
                <p id="availability_statut"{if ($product->quantity <= 0 && !$product->available_later && $allow_oosp) || ($product->quantity > 0 && !$product->available_now) || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}>
                    {*<span id="availability_label">{l s='Availability:'}</span>*}
                    <span id="availability_value"{if $product->quantity <= 0} class="warning_inline"{/if}>{if $product->quantity <= 0}{if $allow_oosp}{$product->available_later}{else}{l s='This product is no longer in stock'}{/if}{else}{$product->available_now}{/if}</span>                
                </p>
                <p class="warning_inline" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >{l s='Warning: Last items in stock!'}</p>
            {/if}
            <p id="availability_date"{if ($product->quantity > 0) || !$product->available_for_order || $PS_CATALOG_MODE || !isset($product->available_date) || $product->available_date < $smarty.now|date_format:'%Y-%m-%d'} style="display: none;"{/if}>
                <span id="availability_date_label">{l s='Availability date:'}</span>
                <span id="availability_date_value">{dateFormat date=$product->available_date full=false}</span>
            </p>
            <!-- Out of stock hook -->
            <div id="oosHook"{if $product->quantity > 0} style="display: none;"{/if}>
                {$HOOK_PRODUCT_OOS}
            </div>
            {if isset($HOOK_EXTRA_RIGHT) && $HOOK_EXTRA_RIGHT}{$HOOK_EXTRA_RIGHT}{/if}
            {if !$content_only}
                <!-- usefull links-->
                <ul id="usefull_link_block" class="clearfix no-print">
                    {if $HOOK_EXTRA_LEFT}{$HOOK_EXTRA_LEFT}{/if}
                    {*<li class="print">
                        <a href="javascript:print();">
                            {l s='Print'}
                        </a>
                    </li>*}
                    {if $have_image && !$jqZoomEnabled}{/if}
                </ul>
            {/if}
        </div>
        <!-- end center infos-->
        <!-- pb-right-column-->
        <div class="pb-right-column col-xs-12 col-sm-4 col-md-3">
            {if ($product->show_price && !isset($restricted_country_mode)) || isset($groups) || $product->reference || (isset($HOOK_PRODUCT_ACTIONS) && $HOOK_PRODUCT_ACTIONS)}
            <!-- add to cart form-->
            <form id="buy_block"{if $PS_CATALOG_MODE && !isset($groups) && $product->quantity > 0} class="hidden"{/if} action="{$link->getPageLink('cart')|escape:'html':'UTF-8'}" method="post">
                <!-- hidden datas -->
                <p class="hidden">
                    <input type="hidden" name="token" value="{$static_token}" />
                    <input type="hidden" name="id_product" value="{$product->id|intval}" id="product_page_product_id" />
                    <input type="hidden" name="add" value="1" />
                    <input type="hidden" name="id_product_attribute" id="idCombination" value="" />
                </p>
                <div class="box-info-product">
                    <div class="content_prices clearfix">
                        {if $product->show_price && !isset($restricted_country_mode) && !$PS_CATALOG_MODE}
                            <!-- prices -->
                            <div class="price">
                                <p class="our_price_display" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
                                    {if $product->quantity > 0}<link itemprop="availability" href="http://schema.org/InStock"/>{/if}
                                    {if $priceDisplay >= 0 && $priceDisplay <= 2}
                                        <span id="our_price_display" itemprop="price">{convertPrice price=$productPrice}</span>
                                        <!--{if $tax_enabled  && ((isset($display_tax_label) && $display_tax_label == 1) || !isset($display_tax_label))}
                                            {if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}
                                        {/if}-->
                                        <meta itemprop="priceCurrency" content="{$currency->iso_code}" />
                                    {/if}
                                </p>
                                <p id="reduction_percent" {if !$product->specificPrice || $product->specificPrice.reduction_type != 'percentage'} style="display:none;"{/if}>
                                    <span id="reduction_percent_display">
                                        {if $product->specificPrice && $product->specificPrice.reduction_type == 'percentage'}-{$product->specificPrice.reduction*100}%{/if}
                                    </span>
                                </p>
                                <p id="old_price"{if (!$product->specificPrice || !$product->specificPrice.reduction) && $group_reduction == 0} class="hidden"{/if}>
                                    {if $priceDisplay >= 0 && $priceDisplay <= 2}
                                        <span id="old_price_display">{if $productPriceWithoutReduction > $productPrice}{convertPrice price=$productPriceWithoutReduction}{/if}</span>
                                        <!-- {if $tax_enabled && $display_tax_label == 1}{if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}{/if} -->
                                    {/if}
                                </p>
                                {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}
                            </div> <!-- end prices -->
                            <p id="reduction_amount" {if !$product->specificPrice || $product->specificPrice.reduction_type != 'amount' || $product->specificPrice.reduction|floatval ==0} style="display:none"{/if}>
                                <span id="reduction_amount_display">
                                {if $product->specificPrice && $product->specificPrice.reduction_type == 'amount' && $product->specificPrice.reduction|intval !=0}
                                    -{convertPrice price=$productPriceWithoutReduction-$productPrice|floatval}
                                {/if}
                                </span>
                            </p>
                            {if $packItems|@count && $productPrice < $product->getNoPackPrice()}
                                <p class="pack_price">{l s='Instead of'} <span style="text-decoration: line-through;">{convertPrice price=$product->getNoPackPrice()}</span></p>
                            {/if}
                            {if $product->ecotax != 0}
                                <p class="price-ecotax">{l s='Include'} <span id="ecotax_price_display">{if $priceDisplay == 2}{$ecotax_tax_exc|convertAndFormatPrice}{else}{$ecotax_tax_inc|convertAndFormatPrice}{/if}</span> {l s='For green tax'}
                                    {if $product->specificPrice && $product->specificPrice.reduction}
                                    <br />{l s='(not impacted by the discount)'}
                                    {/if}
                                </p>
                            {/if}
                            {if !empty($product->unity) && $product->unit_price_ratio > 0.000000}
                                {math equation="pprice / punit_price"  pprice=$productPrice  punit_price=$product->unit_price_ratio assign=unit_price}
                                <p class="unit-price"><span id="unit_price_display">{convertPrice price=$unit_price}</span> {l s='per'} {$product->unity|escape:'html':'UTF-8'}</p>
                            {/if}
                        {/if} {*close if for show price*}
                        <div class="clear"></div>
                    </div> <!-- end content_prices -->
                    <div class="product_attributes clearfix">
                        <!-- quantity wanted -->
                        {if !$PS_CATALOG_MODE}
                        <p id="quantity_wanted_p"{if (!$allow_oosp && $product->quantity <= 0) || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}>
                            <label>{l s='Quantity:'}</label>
                            <input type="text" name="qty" id="quantity_wanted" class="text" value="{if isset($quantityBackup)}{$quantityBackup|intval}{else}{if $product->minimal_quantity > 1}{$product->minimal_quantity}{else}1{/if}{/if}" />
                            <a href="#" data-field-qty="qty" class="btn btn-default button-minus product_quantity_down">
                                <span><i class="icon-minus"></i></span>
                            </a>
                            <a href="#" data-field-qty="qty" class="btn btn-default button-plus product_quantity_up ">
                                <span><i class="icon-plus"></i></span>
                            </a>
                            <span class="clearfix"></span>
                        </p>
                        {/if}
                        <!-- minimal quantity wanted -->
                        <p id="minimal_quantity_wanted_p"{if $product->minimal_quantity <= 1 || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}>
                            {l s='This product is not sold individually. You must select at least'} <b id="minimal_quantity_label">{$product->minimal_quantity}</b> {l s='quantity for this product.'}
                        </p>
                        {if isset($groups)}
                            <!-- attributes -->
                            <div id="attributes">
                                <div class="clearfix"></div>
                                {foreach from=$groups key=id_attribute_group item=group}
                                    {if $group.attributes|@count}
                                        <fieldset class="attribute_fieldset">
                                            <label class="attribute_label" {if $group.group_type != 'color' && $group.group_type != 'radio'}for="group_{$id_attribute_group|intval}"{/if}>{$group.name|escape:'html':'UTF-8'} : </label>
                                            {assign var="groupName" value="group_$id_attribute_group"}
                                            <div class="attribute_list">
                                                {if ($group.group_type == 'select')}
                                                    <select name="{$groupName}" id="group_{$id_attribute_group|intval}" class="form-control attribute_select no-print">
                                                        {foreach from=$group.attributes key=id_attribute item=group_attribute}
                                                            <option value="{$id_attribute|intval}"{if (isset($smarty.get.$groupName) && $smarty.get.$groupName|intval == $id_attribute) || $group.default == $id_attribute} selected="selected"{/if} title="{$group_attribute|escape:'html':'UTF-8'}">{$group_attribute|escape:'html':'UTF-8'}</option>
                                                        {/foreach}
                                                    </select>
                                                {elseif ($group.group_type == 'color')}
                                                    <ul id="color_to_pick_list" class="clearfix">
                                                        {assign var="default_colorpicker" value=""}
                                                        {foreach from=$group.attributes key=id_attribute item=group_attribute}
                                                            <li{if $group.default == $id_attribute} class="selected"{/if}>
                                                                <a href="{$link->getProductLink($product)|escape:'html':'UTF-8'}" id="color_{$id_attribute|intval}" name="{$colors.$id_attribute.name|escape:'html':'UTF-8'}" class="color_pick{if ($group.default == $id_attribute)} selected{/if}" style="background: {$colors.$id_attribute.value|escape:'html':'UTF-8'};" title="{$colors.$id_attribute.name|escape:'html':'UTF-8'}">
                                                                    {if file_exists($col_img_dir|cat:$id_attribute|cat:'.jpg')}
                                                                        <img src="{$img_col_dir}{$id_attribute|intval}.jpg" alt="{$colors.$id_attribute.name|escape:'html':'UTF-8'}" width="20" height="20" />
                                                                    {/if}
                                                                </a>
                                                            </li>
                                                            {if ($group.default == $id_attribute)}
                                                                {$default_colorpicker = $id_attribute}
                                                            {/if}
                                                        {/foreach}
                                                    </ul>
                                                    <input type="hidden" class="color_pick_hidden" name="{$groupName|escape:'html':'UTF-8'}" value="{$default_colorpicker|intval}" />
                                                {elseif ($group.group_type == 'radio')}
                                                    <ul>
                                                        {foreach from=$group.attributes key=id_attribute item=group_attribute}
                                                            <li>
                                                                <input type="radio" class="attribute_radio" name="{$groupName|escape:'html':'UTF-8'}" value="{$id_attribute}" {if ($group.default == $id_attribute)} checked="checked"{/if} />
                                                                <span>{$group_attribute|escape:'html':'UTF-8'}</span>
                                                            </li>
                                                        {/foreach}
                                                    </ul>
                                                {/if}
                                            </div> <!-- end attribute_list -->
                                        </fieldset>
                                    {/if}
                                {/foreach}
                            </div> <!-- end attributes -->
                        {/if}
                    </div> <!-- end product_attributes -->
                    <div class="box-cart-bottom">
                        <div{if (!$allow_oosp && $product->quantity <= 0) || !$product->available_for_order || (isset($restricted_country_mode) && $restricted_country_mode) || $PS_CATALOG_MODE} class="unvisible"{/if}>
                            <p id="add_to_cart" class="buttons_bottom_block no-print">
                                <button type="submit" name="Submit" class="exclusive">
                                    <span>{l s='Comprar'}</span>
                                </button>
                            </p>
                        </div>
                        {if isset($HOOK_PRODUCT_ACTIONS) && $HOOK_PRODUCT_ACTIONS}{$HOOK_PRODUCT_ACTIONS}{/if}<strong></strong>
                    </div> <!-- end box-cart-bottom -->
                </div> <!-- end box-info-product -->
            </form>
            {/if}
        </div> <!-- end pb-right-column-->
    </div> <!-- end primary_block -->
    {if !$content_only}
{if (isset($quantity_discounts) && count($quantity_discounts) > 0)}
            <!-- quantity discount -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='Volume discounts'}</h3>
                <div id="quantityDiscount">
                    <table class="std table-product-discounts">
                        <thead>
                            <tr>
                                <th>{l s='Quantity'}</th>
                                <th>{if $display_discount_price}{l s='Price'}{else}{l s='Discount'}{/if}</th>
                                <th>{l s='You Save'}</th>
                            </tr>
                        </thead>
                        <tbody>
                            {foreach from=$quantity_discounts item='quantity_discount' name='quantity_discounts'}
                            <tr id="quantityDiscount_{$quantity_discount.id_product_attribute}" class="quantityDiscount_{$quantity_discount.id_product_attribute}" data-discount-type="{$quantity_discount.reduction_type}" data-discount="{$quantity_discount.real_value|floatval}" data-discount-quantity="{$quantity_discount.quantity|intval}">
                                <td>
                                    {$quantity_discount.quantity|intval}
                                </td>
                                <td>
                                    {if $quantity_discount.price >= 0 || $quantity_discount.reduction_type == 'amount'}
                                        {if $display_discount_price}
                                            {convertPrice price=$productPrice-$quantity_discount.real_value|floatval}
                                        {else}
                                            {convertPrice price=$quantity_discount.real_value|floatval}
                                        {/if}
                                    {else}
                                        {if $display_discount_price}
                                            {convertPrice price = $productPrice-($productPrice*$quantity_discount.reduction)|floatval}
                                        {else}
                                            {$quantity_discount.real_value|floatval}%
                                        {/if}
                                    {/if}
                                </td>
                                <td>
                                    <span>{l s='Up to'}</span>
                                    {if $quantity_discount.price >= 0 || $quantity_discount.reduction_type == 'amount'}
                                        {$discountPrice=$productPrice-$quantity_discount.real_value|floatval}
                                    {else}
                                        {$discountPrice=$productPrice-($productPrice*$quantity_discount.reduction)|floatval}
                                    {/if}
                                    {$discountPrice=$discountPrice*$quantity_discount.quantity}
                                    {$qtyProductPrice = $productPrice*$quantity_discount.quantity}
                                    {convertPrice price=$qtyProductPrice-$discountPrice}
                                </td>
                            </tr>
                            {/foreach}
                        </tbody>
                    </table>
                </div>
            </section>
        {/if}
        {if isset($features) && $features}
            <!-- Data sheet -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='Data sheet'}</h3>
                <table class="table-data-sheet">            
                    {foreach from=$features item=feature}
                    <tr class="{cycle values="odd,even"}">
                        {if isset($feature.value)}                
                        <td>{$feature.name|escape:'html':'UTF-8'}</td>
                        <td>{$feature.value|escape:'html':'UTF-8'}</td>
                        {/if}
                    </tr>
                    {/foreach}
                </table>
            </section>
            <!--end Data sheet -->
        {/if}

        <!--HOOK_PRODUCT_TAB -->
        <section class="page-product-box">
            {$HOOK_PRODUCT_TAB}
            {if isset($HOOK_PRODUCT_TAB_CONTENT) && $HOOK_PRODUCT_TAB_CONTENT}{$HOOK_PRODUCT_TAB_CONTENT}{/if}
        </section>
        <!--end HOOK_PRODUCT_TAB -->
        {if isset($accessories) && $accessories}
            <!--Accessories -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='Accessories'}</h3>
                <div class="block products_block accessories-block clearfix">
                    <div class="block_content">
                        <ul id="bxslider" class="bxslider clearfix">
                            {foreach from=$accessories item=accessory name=accessories_list}
                                {if ($accessory.allow_oosp || $accessory.quantity_all_versions > 0 || $accessory.quantity > 0) && $accessory.available_for_order && !isset($restricted_country_mode)}
                                    {assign var='accessoryLink' value=$link->getProductLink($accessory.id_product, $accessory.link_rewrite, $accessory.category)}
                                    <li class="item product-box ajax_block_product{if $smarty.foreach.accessories_list.first} first_item{elseif $smarty.foreach.accessories_list.last} last_item{else} item{/if} product_accessories_description">
                                        <div class="product_desc">
                                            <a href="{$accessoryLink|escape:'html':'UTF-8'}" title="{$accessory.legend|escape:'html':'UTF-8'}" class="product-image product_image">
                                                <img class="lazyOwl" src="{$link->getImageLink($accessory.link_rewrite, $accessory.id_image, 'home_default')|escape:'html':'UTF-8'}" alt="{$accessory.legend|escape:'html':'UTF-8'}" width="{$homeSize.width}" height="{$homeSize.height}"/>
                                            </a>
                                            <div class="block_description">
                                                <a href="{$accessoryLink|escape:'html':'UTF-8'}" title="{l s='More'}" class="product_description">
                                                    {$accessory.description_short|strip_tags|truncate:25:'...'}
                                                </a>
                                            </div>
                                        </div>
                                        <div class="s_title_block">
                                            <h5 class="product-name">
                                                <a href="{$accessoryLink|escape:'html':'UTF-8'}">
                                                    {$accessory.name|truncate:20:'...':true|escape:'html':'UTF-8'}
                                                </a>
                                            </h5>
                                            {if $accessory.show_price && !isset($restricted_country_mode) && !$PS_CATALOG_MODE}
                                            <span class="price">
                                                {if $priceDisplay != 1}
                                                {displayWtPrice p=$accessory.price}{else}{displayWtPrice p=$accessory.price_tax_exc}
                                                {/if}
                                            </span>
                                            {/if}
                                        </div>
                                        <div class="clearfix" style="margin-top:5px">
                                            {if !$PS_CATALOG_MODE && ($accessory.allow_oosp || $accessory.quantity > 0)}
                                                <div class="no-print">
                                                    <a class="exclusive button ajax_add_to_cart_button" href="{$link->getPageLink('cart', true, NULL, "qty=1&id_product={$accessory.id_product|intval}&token={$static_token}&add")|escape:'html':'UTF-8'}" data-id-product="{$accessory.id_product|intval}" title="{l s='Comprar'}">
                                                        <span>{l s='Comprar'}</span>
                                                    </a>
                                                </div>
                                            {/if}
                                        </div>
                                    </li>
                                {/if}
                            {/foreach}
                        </ul>
                    </div>
                </div>    
            </section>
            <!--end Accessories -->
        {/if}
        {if isset($HOOK_PRODUCT_FOOTER) && $HOOK_PRODUCT_FOOTER}{$HOOK_PRODUCT_FOOTER}{/if}
        <!-- description & features -->
        {if (isset($product) && $product->description) || (isset($features) && $features) || (isset($accessories) && $accessories) || (isset($HOOK_PRODUCT_TAB) && $HOOK_PRODUCT_TAB) || (isset($attachments) && $attachments) || isset($product) && $product->customizable}
            {if isset($attachments) && $attachments}
            <!--Download -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='Download'}</h3>
                {foreach from=$attachments item=attachment name=attachements}
                    {if $smarty.foreach.attachements.iteration %3 == 1}<div class="row">{/if}
                        <div class="col-lg-4">
                            <h4><a href="{$link->getPageLink('attachment', true, NULL, "id_attachment={$attachment.id_attachment}")|escape:'html':'UTF-8'}">{$attachment.name|escape:'html':'UTF-8'}</a></h4>
                            <p class="text-muted">{$attachment.description|escape:'html':'UTF-8'}</p>
                            <a class="btn btn-default btn-block" href="{$link->getPageLink('attachment', true, NULL, "id_attachment={$attachment.id_attachment}")|escape:'html':'UTF-8'}">
                                <i class="icon-download"></i>
                                {l s="Download"} ({Tools::formatBytes($attachment.file_size, 2)})
                            </a>
                            <hr>
                        </div>
                    {if $smarty.foreach.attachements.iteration %3 == 0 || $smarty.foreach.attachements.last}</div>{/if}
                {/foreach}
            </section>
            <!--end Download -->
            {/if}
            {if isset($product) && $product->customizable}
            <!--Customization -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='Product customization'}</h3>
                <!-- Customizable products -->
                <form method="post" action="{$customizationFormTarget}" enctype="multipart/form-data" id="customizationForm" class="clearfix">
                    <p class="infoCustomizable">
                        {l s='After saving your customized product, remember to add it to your cart.'}
                        {if $product->uploadable_files}
                        <br />
                        {l s='Allowed file formats are: GIF, JPG, PNG'}{/if}
                    </p>
                    {if $product->uploadable_files|intval}
                        <div class="customizableProductsFile">
                            <h5 class="product-heading-h5">{l s='Pictures'}</h5>
                            <ul id="uploadable_files" class="clearfix">
                                {counter start=0 assign='customizationField'}
                                {foreach from=$customizationFields item='field' name='customizationFields'}
                                    {if $field.type == 0}
                                        <li class="customizationUploadLine{if $field.required} required{/if}">{assign var='key' value='pictures_'|cat:$product->id|cat:'_'|cat:$field.id_customization_field}
                                            {if isset($pictures.$key)}
                                                <div class="customizationUploadBrowse">
                                                    <img src="{$pic_dir}{$pictures.$key}_small" alt="" />
                                                        <a href="{$link->getProductDeletePictureLink($product, $field.id_customization_field)|escape:'html':'UTF-8'}" title="{l s='Delete'}" >
                                                            <img src="{$img_dir}icon/delete.gif" alt="{l s='Delete'}" class="customization_delete_icon" width="11" height="13" />
                                                        </a>
                                                </div>
                                            {/if}
                                            <div class="customizationUploadBrowse form-group">
                                                <label class="customizationUploadBrowseDescription">
                                                    {if !empty($field.name)}
                                                        {$field.name}
                                                    {else}
                                                        {l s='Please select an image file from your computer'}
                                                    {/if}
                                                    {if $field.required}<sup>*</sup>{/if}
                                                </label>
                                                <input type="file" name="file{$field.id_customization_field}" id="img{$customizationField}" class="form-control customization_block_input {if isset($pictures.$key)}filled{/if}" />
                                            </div>
                                        </li>
                                        {counter}
                                    {/if}
                                {/foreach}
                            </ul>
                        </div>
                    {/if}
                    {if $product->text_fields|intval}
                        <div class="customizableProductsText">
                            <h5 class="product-heading-h5">{l s='Text'}</h5>
                            <ul id="text_fields">
                            {counter start=0 assign='customizationField'}
                            {foreach from=$customizationFields item='field' name='customizationFields'}
                                {if $field.type == 1}
                                    <li class="customizationUploadLine{if $field.required} required{/if}">
                                        <label for ="textField{$customizationField}">
                                            {assign var='key' value='textFields_'|cat:$product->id|cat:'_'|cat:$field.id_customization_field}
                                            {if !empty($field.name)}
                                                {$field.name}
                                            {/if}
                                            {if $field.required}<sup>*</sup>{/if}
                                        </label>
                                        <textarea name="textField{$field.id_customization_field}" class="form-control customization_block_input" id="textField{$customizationField}" rows="3" cols="20">{strip}
                                            {if isset($textFields.$key)}
                                                {$textFields.$key|stripslashes}
                                            {/if}
                                        {/strip}</textarea>
                                    </li>
                                    {counter}
                                {/if}
                            {/foreach}
                            </ul>
                        </div>
                    {/if}
                    <p id="customizedDatas">
                        <input type="hidden" name="quantityBackup" id="quantityBackup" value="" />
                        <input type="hidden" name="submitCustomizedDatas" value="1" />
                        <button class="button btn btn-default button button-small" name="saveCustomization">
                            <span>{l s='Save'}</span>
                        </button>
                        <span id="ajax-loader" class="unvisible">
                            <img src="{$img_ps_dir}loader.gif" alt="loader" />
                        </span>
                    </p>
                </form>
                <p class="clear required"><sup>*</sup> {l s='required fields'}</p>    
            </section>
            <!--end Customization -->
            {/if}
        {/if}
        {if isset($packItems) && $packItems|@count > 0}
        <section id="blockpack">
            <h3 class="page-product-heading">{l s='Pack content'}</h3>
            {include file="$tpl_dir./product-list.tpl" products=$packItems}
        </section>
        {/if}
    {/if}
{strip}
{strip}
{if isset($smarty.get.ad) && $smarty.get.ad}
{addJsDefL name=ad}{$base_dir|cat:$smarty.get.ad|escape:'html':'UTF-8'}{/addJsDefL}
{/if}
{if isset($smarty.get.adtoken) && $smarty.get.adtoken}
{addJsDefL name=adtoken}{$smarty.get.adtoken|escape:'html':'UTF-8'}{/addJsDefL}
{/if}
{addJsDef allowBuyWhenOutOfStock=$allow_oosp|boolval}
{addJsDef availableNowValue=$product->available_now|escape:'quotes':'UTF-8'}
{addJsDef availableLaterValue=$product->available_later|escape:'quotes':'UTF-8'}
{addJsDef attribute_anchor_separator=$attribute_anchor_separator|addslashes}
{addJsDef attributesCombinations=$attributesCombinations}
{addJsDef currencySign=$currencySign|html_entity_decode:2:"UTF-8"}
{addJsDef currencyRate=$currencyRate|floatval}
{addJsDef currencyFormat=$currencyFormat|intval}
{addJsDef currencyBlank=$currencyBlank|intval}
{addJsDef currentDate=$smarty.now|date_format:'%Y-%m-%d %H:%M:%S'}
{if isset($combinations) && $combinations}
    {addJsDef combinations=$combinations}
    {addJsDef combinationsFromController=$combinations}
    {addJsDef displayDiscountPrice=$display_discount_price}
    {addJsDefL name='upToTxt'}{l s='Up to' js=1}{/addJsDefL}
{/if}
{if isset($combinationImages) && $combinationImages}
    {addJsDef combinationImages=$combinationImages}
{/if}
{addJsDef customizationFields=$customizationFields}
{addJsDef default_eco_tax=$product->ecotax|floatval}
{addJsDef displayPrice=$priceDisplay|intval}
{addJsDef ecotaxTax_rate=$ecotaxTax_rate|floatval}
{addJsDef group_reduction=$group_reduction}
{if isset($cover.id_image_only)}
    {addJsDef idDefaultImage=$cover.id_image_only|intval}
{else}
    {addJsDef idDefaultImage=0}
{/if}
{addJsDef img_ps_dir=$img_ps_dir}
{addJsDef img_prod_dir=$img_prod_dir}
{addJsDef id_product=$product->id|intval}
{addJsDef jqZoomEnabled=$jqZoomEnabled|boolval}
{addJsDef maxQuantityToAllowDisplayOfLastQuantityMessage=$last_qties|intval}
{addJsDef minimalQuantity=$product->minimal_quantity|intval}
{addJsDef noTaxForThisProduct=$no_tax|boolval}
{addJsDef oosHookJsCodeFunctions=Array()}
{addJsDef productHasAttributes=isset($groups)|boolval}
{addJsDef productPriceTaxExcluded=($product->getPriceWithoutReduct(true)|default:'null' - $product->ecotax)|floatval}
{addJsDef productBasePriceTaxExcluded=($product->base_price - $product->ecotax)|floatval}
{addJsDef productReference=$product->reference|escape:'html':'UTF-8'}
{addJsDef productAvailableForOrder=$product->available_for_order|boolval}
{addJsDef productPriceWithoutReduction=$productPriceWithoutReduction|floatval}
{addJsDef productPrice=$productPrice|floatval}
{addJsDef productUnitPriceRatio=$product->unit_price_ratio|floatval}
{addJsDef productShowPrice=(!$PS_CATALOG_MODE && $product->show_price)|boolval}
{addJsDef PS_CATALOG_MODE=$PS_CATALOG_MODE}
{if $product->specificPrice && $product->specificPrice|@count}
    {addJsDef product_specific_price=$product->specificPrice}
{else}
    {addJsDef product_specific_price=array()}
{/if}
{if $display_qties == 1 && $product->quantity}
    {addJsDef quantityAvailable=$product->quantity}
{else}
    {addJsDef quantityAvailable=0}
{/if}
{addJsDef quantitiesDisplayAllowed=$display_qties|boolval}
{if $product->specificPrice && $product->specificPrice.reduction && $product->specificPrice.reduction_type == 'percentage'}
    {addJsDef reduction_percent=$product->specificPrice.reduction*100|floatval}
{else}
    {addJsDef reduction_percent=0}
{/if}
{if $product->specificPrice && $product->specificPrice.reduction && $product->specificPrice.reduction_type == 'amount'}
    {addJsDef reduction_price=$product->specificPrice.reduction|floatval}
{else}
    {addJsDef reduction_price=0}
{/if}
{if $product->specificPrice && $product->specificPrice.price}
    {addJsDef specific_price=$product->specificPrice.price|floatval}
{else}
    {addJsDef specific_price=0}
{/if}
{addJsDef specific_currency=($product->specificPrice && $product->specificPrice.id_currency)|boolval} {* TODO: remove if always false *}
{addJsDef stock_management=$stock_management|intval}
{addJsDef taxRate=$tax_rate|floatval}
{addJsDefL name=doesntExist}{l s='This combination does not exist for this product. Please select another combination.' js=1}{/addJsDefL}
{addJsDefL name=doesntExistNoMore}{l s='This product is no longer in stock' js=1}{/addJsDefL}
{addJsDefL name=doesntExistNoMoreBut}{l s='with those attributes but is available with others.' js=1}{/addJsDefL}
{addJsDefL name=fieldRequired}{l s='Please fill in all the required fields before saving your customization.' js=1}{/addJsDefL}
{addJsDefL name=uploading_in_progress}{l s='Uploading in progress, please be patient.' js=1}{/addJsDefL}
{/strip}
{/if}

Lo que he hecho es subir y meter la descripción larga dentro del div que define al producto, justo después de la descripción corta lo cual va a hacer que se muestre de esa manera en la página del producto, pero al menos probamos si así la herramieta de Google si reconoce bien el campo descripción. Además le faltaba la modificación que hablábamos en post anteriores. También he modificado la parte de "condition" a la manera correcta según el marcado de productos.

 

Espero que pueda servirte. Saludos!

Link to comment
Share on other sites

Acabo de probalo uy esta correctisimo incluso ha desaparecido un error que ponia antes

Error: Page contains property "condition" which is not part of the schema.
haora , o en estos dias lo comporbare con site maps aver que dato screa y s i no cambi ala estructura de l apagina en coasas que yo habia quitado, muchisimas gracias. Xinito, tendre el post unos dias abierto , par aterminar de comporbar , muy agradecido , no sabes cuanto
Link to comment
Share on other sites

El bloque de código que muestra la descripción en el product.tpl es:

        {if $product->description}
            <!-- More info -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='More info'}</h3>{/if}
                {if isset($product) && $product->description}
                    <!-- full description -->
                    <div itemprop="description" class="rte">{$product->description}</div>
            </section>
            <!--end  More info -->
        {/if}	

Por la estructura de tu plantilla, este bloque descripción debe estar dentro del DIV que engloba a la info del producto en el marcado de datos. Por eso, en el cambio que te he propuesto, el bloque se ha subido de sitio y aparece ahí.

 

Prueba a cambiar esa porción de código de tu product.tpl, ponla justo antes de donde acaba el DIV (primary_block) sobre la línea 404, dejándolo entonces así:

</div> <!-- end pb-right-column-->

        {if $product->description}
            <!-- More info -->
            <section class="page-product-box">
                <h3 class="page-product-heading">{l s='More info'}</h3>{/if}
                {if isset($product) && $product->description}
                    <!-- full description -->
                    <div itemprop="description" class="rte">{$product->description}</div>
            </section>
            <!--end  More info -->
        {/if}

</div> <!-- end primary_block -->

No sé si se visualizará correctamente, esto ya es una cuestión del diseño y cómo estructures la plantilla. También podrías probar a ponerlo debajo del bloque izquierdo de las imágenes, justo antes del </div> <!-- end pb-left-column -->.

 

saludos.

Link to comment
Share on other sites

  • 1 month later...

Buenas a todos, 

 

retomo esto porque no he conseguido arreglar el problema que tengo... y creo que hay mas de uno que lo sigue teniendo.

 

Una vez hecho todos los cambios que habeis propuesto y no tener exito.. Os pongo aquí el tipo de error que me da, no es en el producto en si, sino que me da error en todas las categorías o páginas que muestran una lista de productos. 

 

Esto es lo que me da al revisar los datos:

 

  • Product 1
  • Product 2

 

Esto sigue pero con todos los productos de la lista, pero he acortado para no alargar.

 

Alguien sabe que puedo hacer para solucionarlo?

  • Like 1
Link to comment
Share on other sites

  • 3 weeks later...

lo del precio modificando la moneda se me solucionó.
 
Pero a mi me sigue dando un error raro de:
Error: Incomplete microdata with schema.org.
 
Creo que está relacionado con los reviews, pero por más que lo repaso veo todo correcto.
 
También me está ignorando el mpn (lo cambié por el sku), desde que he añadido el brand, ya no me lee el mpn, no sé por qué :blink:
 
A ver si véis qu eme puede fallar que ya llevo dos días loco! :wacko:
http://www.google.com/webmasters/tools/richsnippets?q=http%3A%2F%2Fwww.comercialmoyano.com%2Fes%2F32-traje-de-novio-italiano-gris-marengo-1171-ottavio-nuccio-gala.html&hl=es
 
el testing tool directamente me tira este fallo: "Se ha producido un error al validar tu marcado.Ignorar"
https://developers.google.com/structured-data/testing-tool/?url=http://www.comercialmoyano.com/es/39-traje-de-novio-italiano-alpaca-azul-1178-ottavio-nuccio-gala.html
 
así tengo en el product.tpl:
 

        <!-- center infos -->
        <div class="pb-center-column col-xs-12 col-sm-4">
            {if $product->online_only}
                <p class="online_only">{l s='Online only'}</p>
            {/if}
            <h1 itemprop="name">{$product->name|escape:'html':'UTF-8'}</h1>
            <p> <span id="product_reference"{if empty($product->reference) || !$product->reference} style="display: none;"{/if}>
                <label>{l s='Model'} </label>
                <span class="editable" itemprop="mpn">{if !isset($groups)}{$product->reference|escape:'html':'UTF-8'}{/if}</span></span>                  <label class="editable" itemprop="brand">OTTAVIO NUCCIO GALA</label>
               </p>

y esto en los comentarios:

                <div class="comment row" itemprop="review" itemscope itemtype="http://schema.org/Review">
                    <div class="comment_author col-sm-4">
                        <span>{l s='Grade' mod='productcomments'} </span>
                        <div class="star_content clearfix"  itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating">
                            {section name="i" start=0 loop=5 step=1}
                                {if $comment.grade le $smarty.section.i.index}
                                    <div class="star"></div>
                                {else}
                                    <div class="star star_on"></div>
                                {/if}
                            {/section}
                            <meta itemprop="worstRating" content = "0" />
                            <meta itemprop="ratingValue" content = "{$comment.grade|escape:'html':'UTF-8'}" />
                            <meta itemprop="bestRating" content = "5" />
                        </div>
                        <div class="comment_author_infos">
                            <strong itemprop="author">{$comment.customer_name|escape:'html':'UTF-8'}</strong>
                            <meta itemprop="datePublished" content="{$comment.date_add|escape:'html':'UTF-8'|substr:0:10}" />
                            <em>{dateFormat date=$comment.date_add|escape:'html':'UTF-8' full=0}</em>
                        </div>
                    </div> <!-- .comment_author -->

                    <div class="comment_details col-sm-8" itemprop="review" itemscope itemtype="http://schema.org/Review">
                        <p class="title_block">
                            <strong itemprop="itemReviewed">{$comment.title}</strong>
                        </p>
                        <p itemprop="reviewBody">{$comment.content|escape:'html':'UTF-8'|nl2br}</p>
                        <ul>
                            {if $comment.total_advice > 0}
                                <li>
                                    {l s='%1$d out of %2$d people found this review useful.' sprintf=[$comment.total_useful,$comment.total_advice] mod='productcomments'}
                                </li>
Link to comment
Share on other sites

 

El problema que está dando básicamente en algunas plantillas es que en las páginas de productos product-list.tpl

se está dejando información básica para la validación del schema.org desde webmasterstools.

 

Ocurre lo siguiente.

 

En algunas plantillas el campo pricecurrency del esquema lo deja = 0 cuando tiene que ser = EUR (en el caso de euros)

para arreglar esto en el product-list.tpl fijaros que tienen que quedar así todas las referencias a pricecurrency:

<meta itemprop="priceCurrency" content="{$currency->iso_code}" />

por otra parte es importante que el elemento del esquema que nos dice si el producto está en stock tiene que contener también el precio y la moneda igual que se muestra a continuación.

 

Item 1
type:	http://schema.org/offer
property:	
    availability:	http://schema.org/InStock
    price:	        50 €
    pricecurrency:	EUR

 

debería quedar más o menos así

<span itemprop="offers" itemscope itemtype="http://schema.org/Offer" class="availability">
    {if ($product.allow_oosp || $product.quantity > 0)}
    <span class="{if $product.quantity <= 0}out-of-stock{else}available-now{/if}">
        <link itemprop="availability" href="http://schema.org/InStock" />{if $product.quantity <= 0}{if $product.allow_oosp}{$product.available_later}{else}{l s='Out of stock'}{/if}{else}{if isset($product.available_now) && $product.available_now}{$product.available_now}{else}{l s='In Stock'}{/if}{/if}
        <span itemprop="price"> {if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>
        <meta itemprop="priceCurrency" content="{$currency->iso_code}" />
    </span>
    {elseif (isset($product.quantity_all_versions) && $product.quantity_all_versions > 0)}
    <span class="available-dif">                                                                                
        <link itemprop="availability" href="http://schema.org/LimitedAvailability" />{l s='Product available with different options'}
        <span itemprop="price"> {if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>
        <meta itemprop="priceCurrency" content="{$currency->iso_code}" />
    </span>
    {else}
    <span class="out-of-stock">                                                                                
        <link itemprop="availability" href="http://schema.org/OutOfStock" />{l s='Out of stock'}
        <span itemprop="price"> {if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>                                                                                
        <meta itemprop="priceCurrency" content="{$currency->iso_code}" />
    </span>
    {/if}
</span>

Muchas gracias! Esta es la solución que elimina todos los errores de "falta Price" que daba webmaster tools.

 

El único "problema" que tengo ahora es que antes salía un rectangulito verde pequeño en el que ponía "En Stock" y ahora aparece uno más grande en el que pone "En Stock (precio)". Me gustaría que quedara como antes, más pequeño y sin indicar ahí el precio, ya que está también justo encima y no me parece estético. Adjunto foto de cómo me queda ahora... gracias!!!post-861264-0-78267700-1423947619_thumb.jpg

Edited by Lazarop (see edit history)
  • Like 1
Link to comment
Share on other sites

Para los que aún tengáis dudas podéis echarle un vistazo a mi tutorial de rich snippets http://goo.gl/yy6toC aunque esté explicado para la plantilla de la 1.5 la esencia es la misma. Echarle un ojo también al rich snippets de los Breadcrumbs para que quede todo con el mismo tipo de código.

 

No sé si me ha parecido entender que ponéis los richsnippets en el product-list.tpl, cuidadito a Google no le gusta ni un pelo tener un amasijo de datos enriquecidos en una sola página. Los richsnippets podéis ponerlos solo en el product.tpl, breadcrumbs y comentarios.

 

Me engancho al hilo y en lo que pueda os echo un cable.

Link to comment
Share on other sites

  • 2 weeks later...

Pero deja una url para que podamos ver cómo tienes el código.

 

Yo tengo una duda, me sale todo ok, pero me da una advertencia que no sé que puede ser:

 

  • Tipo no especificado

  • El nodo está vacío. Comprueba que sea así como lo quieres y ten en cuenta que se puede eliminar.

 

:huh:

Link to comment
Share on other sites

Pero deja una url para que podamos ver cómo tienes el código.

 

Yo tengo una duda, me sale todo ok, pero me da una advertencia que no sé que puede ser:

 

  • Tipo no especificado

  • El nodo está vacío. Comprueba que sea así como lo quieres y ten en cuenta que se puede eliminar.

 

:huh:

 

 

La web es esta:

 

www.paratiparami.es

 

 

saludos y gracias...

Link to comment
Share on other sites

Os aviso que no es nada recomendable configurar los rich snippets en las listas de productos, no os servirá de nada y os perjudicará en el SEO.

 

Igual que el contenido duplicado, si tienes el rich snippets del producto específico para que lo queréis mandar en el listado de productos?

 

Leeros esto por favor https://support.google.com/webmasters/answer/146750

 

y para los perezosos copio el párrafo concreto de Google ;)

 

 

A continuación, se indican las directrices que se aplican a los fragmentos de productos:

  • Al utilizar el marcado de productos, el tema principal de la página debe tratar sobre un producto específico y no sobre una categoría o sobre una lista de productos. No se admite el marcado de productos en páginas de fichas o de categorías.
  • Es necesario que el producto se pueda comprar directamente en la página. No se admite el marcado de productos en páginas que exijan que el usuario visite el sitio de otro vendedor o un vendedor offline para completar la compra.
  • No se admiten productos relacionados con contenido para adultos.
  • Si el producto solo tiene un revisor, el nombre del mismo tiene que ser un nombre de persona válido (por ejemplo, "Carmen López") o de un equipo u organización (por ejemplo, "CNET Revisores"). Por ejemplo, "50% de descuento en la Noche de Reyes" no es un nombre válido.

 

  • Like 1
Link to comment
Share on other sites

ahhh eso no lo sabía yo, es que como lo traía por defecto el prestashop por eso lo puse bien, recomiendas quitarlo entonces?? :blink:

 

La verdad que estando en los productos con esto se repite, pero pensé que sería como un tipo índice de cara a google...

 

PD: Te voy hacer caso, ya se lo he quitado ;)

 

PD2: Alguien sabe porqué me marca esta advertencia en los productos?? igual no es grave, pero es que no sé qué es, por más que busco en google no aparece ese error:

 

https://developers.google.com/structured-data/testing-tool/?url=http://www.comercialmoyano.com/es/480-chaleco-cruzado-gris-lana-principe-de-gales-23697-5389-8100-ottavio-nuccio-gala.html

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

ahhh eso no lo sabía yo, es que como lo traía por defecto el prestashop por eso lo puse bien, recomiendas quitarlo entonces?? :blink:

 

La verdad que estando en los productos con esto se repite, pero pensé que sería como un tipo índice de cara a google...

 

PD: Te voy hacer caso, ya se lo he quitado ;)

 

PD2: Alguien sabe porqué me marca esta advertencia en los productos?? igual no es grave, pero es que no sé qué es, por más que busco en google no aparece ese error:

 

https://developers.google.com/structured-data/testing-tool/?url=http://www.comercialmoyano.com/es/480-chaleco-cruzado-gris-lana-principe-de-gales-23697-5389-8100-ottavio-nuccio-gala.html

 

No sabía que esa integración de Rich Snippets estaba en la plantilla por defecto, ahora caigo porque hay tanta gente empeñada en ella. En todo caso será algo que tengan que quitar en próximas versiones o algo a quitar en cada versión que saquen.  :P

 

Para ver mucho mejor en que línea está ese error, te recomiendo quitar todas las compresiones CCC, le pasas el análisis de richsnippets y te indicará en que línea concreta están los errores. Después de solucionarlo vuelves a activar el CCC y listos.

 

Lo más seguro es que tengas código extra que se puede eliminar y no hace nada.

 

Por otro lado tienes un handicap parecido al de los product list pero con las reviews. Tienes que utilizar el marcado opiniones globales, ahora lo haces como opiniones individuales, y viendo que tienes más de 1 Google te lo tomará como Spam.

 

https://support.google.com/webmasters/answer/146645?hl=es

 

El párrafo concreto.

 

 

 

Utiliza el formato de opiniones individuales para las páginas que contengan una única opinión. Para las páginas que contengan una recopilación de opiniones, utiliza el formato de opiniones globales. Si la página contiene los dos tipos de opiniones (por ejemplo, la opinión de un editor y un conjunto de opiniones de usuarios), te recomendamos que selecciones un formato. Puedes utilizar el formato de opiniones individuales para marcar la opinión del editor o el formato de opiniones globales para resumir el conjunto de las opiniones de los usuarios. Si una página contiene los dos tipos de marcado, Google mostrará el marcado de opiniones globales.

 

Si viene así por defecto pues otra cosa a mejorar.

  • Like 1
Link to comment
Share on other sites

Vale, he eliminado de la plantilla de los comentarios y lo he dejado sólo en el recuento total, me queda así ahora:

 

https://developers.google.com/webmasters/structured-data/testing-tool?url=http%253A%252F%252Fwww.comercialmoyano.com%252Fes%252F480-chaleco-cruzado-gris-lana-principe-de-gales-23697-5389-8100-ottavio-nuccio-gala.html

 

Voy a repasar en el product.tpl a ver si veo algún código sobrante, lo que me mosquea un poco es que no me aparece el código "MPN" del producto en el análisis y lo tengo puesto :blink:

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

Gracias por tu ayuda!

 

He chapuceado con un meta el sku, pero el mpn normal no lo engancha.

Otra duda qu etengo es si hay que repetir todo con metas al inicio, o si está ya en la vista no es necesario.

 

Te dejo el tpl entero (sé que soy un chapuzas por no hacer override, pero como actualizo poco, me gusta ir cacharreando directamente en la plantilla :rolleyes: )

{*
* 2007-2014 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to [email protected] so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
*  @author PrestaShop SA <[email protected]>
*  @copyright  2007-2014 PrestaShop SA
*  @license    http://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*}
{include file="$tpl_dir./errors.tpl"}
{if $errors|@count == 0}
	{if !isset($priceDisplayPrecision)}
		{assign var='priceDisplayPrecision' value=2}
	{/if}
	{if !$priceDisplay || $priceDisplay == 2}
		{assign var='productPrice' value=$product->getPrice(true, $smarty.const.NULL, $priceDisplayPrecision)}
		{assign var='productPriceWithoutReduction' value=$product->getPriceWithoutReduct(false, $smarty.const.NULL)}
	{elseif $priceDisplay == 1}
		{assign var='productPrice' value=$product->getPrice(false, $smarty.const.NULL, $priceDisplayPrecision)}
		{assign var='productPriceWithoutReduction' value=$product->getPriceWithoutReduct(true, $smarty.const.NULL)}
	{/if}
<div itemscope itemtype="http://schema.org/Product">
	<div class="primary_block row">
		{if !$content_only}
			<div class="container">
				<div class="top-hr"></div>
			</div>
		{/if}
		{if isset($adminActionDisplay) && $adminActionDisplay}
			<div id="admin-action">
				<p>{l s='This product is not visible to your customers.'}
					<input type="hidden" id="admin-action-product-id" value="{$product->id}" />
					<input type="submit" value="{l s='Publish'}" name="publish_button" class="exclusive" />
					<input type="submit" value="{l s='Back'}" name="lnk_view" class="exclusive" />
				</p>
				<p id="admin-action-result"></p>
			</div>
		{/if}
		{if isset($confirmation) && $confirmation}
			<p class="confirmation">
				{$confirmation}
			</p>
		{/if}
		<!-- left infos-->
		<div class="pb-left-column col-xs-12 col-sm-4 col-md-5">
			<!-- product img-->
			<div id="image-block" class="clearfix">
				{if $product->new}
					<span class="new-box">
						<span class="new-label">{l s='New'}</span>
					</span>
				{/if}
				{if $product->on_sale}
					<span class="sale-box no-print">
						<span class="sale-label">{l s='Sale!'}</span>
					</span>
				{elseif $product->specificPrice && $product->specificPrice.reduction && $productPriceWithoutReduction > $productPrice}
					<span class="discount">{l s='Reduced price!'}</span>
				{/if}
				{if $have_image}
					<span id="view_full_size">
						{if $jqZoomEnabled && $have_image && !$content_only}
							<a class="jqzoom" title="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" rel="gal1" href="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'thickbox_default')|escape:'html':'UTF-8'}">
								<img itemprop="image" src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large_default')|escape:'html':'UTF-8'}" title="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" alt="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}"/>
							</a>
  <!--apaño zoom-->    
  	<span class="span_link2 no-print">
     <a target="_blank" title="Zoom {if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" rel="gal1" href="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'thickbox_default')|escape:'html':'UTF-8'}"> 
    {l s='View larger'}</a></span>
                            
<!--fin de apaño zoom-->
						{else}
							<img id="bigpic" itemprop="image" src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large_default')|escape:'html':'UTF-8'}" title="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" alt="{if !empty($cover.legend)}{$cover.legend|escape:'html':'UTF-8'}{else}{$product->name|escape:'html':'UTF-8'}{/if}" width="{$largeSize.width}" height="{$largeSize.height}"/>
							{if !$content_only}
								<span class="span_link no-print">{l s='View larger'}</span>
							{/if}
						{/if}
					</span>
				{else}
					<span id="view_full_size">
						<img itemprop="image" src="{$img_prod_dir}{$lang_iso}-default-large_default.jpg" id="bigpic" alt="" title="{$product->name|escape:'html':'UTF-8'}" width="{$largeSize.width}" height="{$largeSize.height}"/>
						{if !$content_only}
							<span class="span_link">
								{l s='View larger'}
							</span>
						{/if}
					</span>
				{/if}
			</div> <!-- end image-block -->
			{if isset($images) && count($images) > 0}
				<!-- thumbnails -->
				<div id="views_block" class="clearfix {if isset($images) && count($images) < 2}hidden{/if}">
					{if isset($images) && count($images) > 4}
						<span class="view_scroll_spacer">
							<a id="view_scroll_left" class="" title="{l s='Other views'}" href="javascript:{ldelim}{rdelim}">
								{l s='Previous'}
							</a>
						</span>
					{/if}
					<div id="thumbs_list">
						<ul id="thumbs_list_frame">
						{if isset($images)}
							{foreach from=$images item=image name=thumbnails}
								{assign var=imageIds value="`$product->id`-`$image.id_image`"}
								{if !empty($image.legend)}
									{assign var=imageTitle value=$image.legend|escape:'html':'UTF-8'}
								{else}
									{assign var=imageTitle value=$product->name|escape:'html':'UTF-8'}
								{/if}
								<li id="thumbnail_{$image.id_image}"{if $smarty.foreach.thumbnails.last} class="last"{/if}>
									<a{if $jqZoomEnabled && $have_image && !$content_only} href="javascript:void(0);" rel="{literal}[spam-filter]/literal}gallery: 'gal1', smallimage: '{$link->getImageLink($product->link_rewrite, $imageIds, 'large_default')|escape:'html':'UTF-8'}',largeimage: '{$link->getImageLink($product->link_rewrite, $imageIds, 'thickbox_default')|escape:'html':'UTF-8'}'{literal[spam-filter]{/literal}"{else} href="{$link->getImageLink($product->link_rewrite, $imageIds, 'thickbox_default')|escape:'html':'UTF-8'}"	data-fancybox-group="other-views" class="fancybox{if $image.id_image == $cover.id_image} shown{/if}"{/if} title="{$imageTitle}">
										<img class="img-responsive" id="thumb_{$image.id_image}" src="{$link->getImageLink($product->link_rewrite, $imageIds, 'cart_default')|escape:'html':'UTF-8'}" alt="{$imageTitle}" title="{$imageTitle}" height="{$cartSize.height}" width="{$cartSize.width}" itemprop="image" />
									</a>
								</li>
							{/foreach}
						{/if}
						</ul>
					</div> <!-- end thumbs_list -->
					{if isset($images) && count($images) > 4}
						<a id="view_scroll_right" title="{l s='Other views'}" href="javascript:{ldelim}{rdelim}">
							{l s='Next'}
						</a>
					{/if}
				</div> <!-- end views-block -->
				<!-- end thumbnails -->
			{/if}
			{if isset($images) && count($images) > 1}
				<p class="resetimg clear no-print">
					<span id="wrapResetImages" style="display: none;">
						<a href="{$link->getProductLink($product)|escape:'html':'UTF-8'}" name="resetImages">
							<i class="icon-repeat"></i>
							{l s='Display all pictures'}
						</a>
					</span>
				</p>
			{/if}
            
		</div> <!-- end pb-left-column -->
		<!-- end left infos-->
        
		<!-- center infos -->
		<div class="pb-center-column col-xs-12 col-sm-4">
			{if $product->online_only}
				<p class="online_only">{l s='Online only'}</p>
			{/if}
			<h1 itemprop="name">{$product->name|escape:'html':'UTF-8'}</h1>
            <meta itemprop="gtin13" content="{$product->ean13}" />
			<p id="product_reference"{if empty($product->reference) || !$product->reference} style="display: none;"{/if}>
				<label>{l s='Model'} </label>
				<span class="editable" itemprop="mpn">{if !isset($groups)}{$product->reference|escape:'html':'UTF-8'}{/if}</span> 
      <label itemprop="brand">OTTAVIO NUCCIO GALA</label>
                    </p>  
           	<!--fb-->
    		<p style="margin:5px 0px 0px;"><iframe src="//www.facebook.com/plugins/like.php?href=https%3A%2F%2Fwww.facebook.com%2FShopONGala&width&layout=standard&action=like&show_faces=false&share=false&height=35&appId=618328661611644" scrolling="no" frameborder="0" style="border:none; overflow:hidden; height:42px;" allowTransparency="true"></iframe></p><!--fin fb-->  
           
            
			{if $product->condition}
			<p id="product_condition" style="display:none;">
				<label>{l s='Condition'} </label>
				{if $product->condition == 'new'}
					<link itemprop="itemCondition" href="http://schema.org/NewCondition"/>
					<span class="editable">{l s='New'}</span>
				{elseif $product->condition == 'used'}
					<link itemprop="itemCondition" href="http://schema.org/UsedCondition"/>
					<span class="editable">{l s='Used'}</span>
				{elseif $product->condition == 'refurbished'}
					<link itemprop="itemCondition" href="http://schema.org/RefurbishedCondition"/>
					<span class="editable">{l s='Refurbished'}</span>
				{/if}
			</p>
			{/if} 
			{if $product->description_short || $packItems|@count > 0}
				<div id="short_description_block">
					{if $product->description_short}
						<div id="short_description_content" class="rte align_justify" itemprop="description">{$product->description_short}</div>
					{/if}

					{if $product->description}
						<p class="buttons_bottom_block">
							<a href="javascript:{ldelim}{rdelim}" class="button">
								{l s='More details'}
							</a>
						</p>
					{/if} 
					{if $packItems|@count > 0}
						<div class="short_description_pack">
						<h3>{l s='Pack content'}</h3>
							{foreach from=$packItems item=packItem}

							<div class="pack_content">
								{$packItem.pack_quantity} x <a href="{$link->getProductLink($packItem.id_product, $packItem.link_rewrite, $packItem.category)|escape:'html':'UTF-8'}">{$packItem.name|escape:'html':'UTF-8'}</a>
								<p>{$packItem.description_short}</p>
							</div>
							{/foreach}
						</div>
					{/if}
				</div> <!-- end short_description_block -->
			{/if}
			{if ($display_qties == 1 && !$PS_CATALOG_MODE && $PS_STOCK_MANAGEMENT && $product->available_for_order)}
				<!-- number of item in stock -->
				<p id="pQuantityAvailable"{if $product->quantity <= 0} style="display: none;"{/if}>
					<span id="quantityAvailable">{$product->quantity|intval}</span>
					<span {if $product->quantity > 1} style="display: none;"{/if} id="quantityAvailableTxt">{l s='Item'}</span>
					<span {if $product->quantity == 1} style="display: none;"{/if} id="quantityAvailableTxtMultiple">{l s='Items'}</span>
				</p>
			{/if}
			{if $PS_STOCK_MANAGEMENT}
				<!-- availability -->
				<p id="availability_statut"{if ($product->quantity <= 0 && !$product->available_later && $allow_oosp) || ($product->quantity > 0 && !$product->available_now) || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}>
					{*<span id="availability_label">{l s='Availability:'}</span>*}
					<span id="availability_value"{if $product->quantity <= 0 && !$allow_oosp} class="warning_inline"{/if}>{if $product->quantity <= 0}{if $allow_oosp}{$product->available_later}{else}{l s='This product is no longer in stock'}{/if}{else}{$product->available_now}{/if}</span>
				</p>
				{hook h="displayProductDeliveryTime" product=$product}
				<p class="warning_inline" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >{l s='Warning: Last items in stock!'}</p>
			{/if}
			<p id="availability_date"{if ($product->quantity > 0) || !$product->available_for_order || $PS_CATALOG_MODE || !isset($product->available_date) || $product->available_date < $smarty.now|date_format:'%Y-%m-%d'} style="display: none;"{/if}>
				<span id="availability_date_label">{l s='Availability date:'}</span>
				<span id="availability_date_value">{dateFormat date=$product->available_date full=false}</span>
			</p>
			<!-- Out of stock hook -->
			<div id="oosHook"{if $product->quantity > 0} style="display: none;"{/if}>
				{$HOOK_PRODUCT_OOS}
			</div>
			{if isset($HOOK_EXTRA_RIGHT) && $HOOK_EXTRA_RIGHT}{$HOOK_EXTRA_RIGHT}{/if}
        	  
			{if !$content_only}
				
        		<!-- usefull links-->
				<ul id="usefull_link_block" class="clearfix no-print">
			<!--		<li class="print">
						<a href="javascript:print();">
							{l s='Print'}
						</a>
					</li> -->
					{if $HOOK_EXTRA_LEFT}{$HOOK_EXTRA_LEFT}{/if}
					{if $have_image && !$jqZoomEnabled}{/if}
				</ul>
                
<!-- Made in Italy-->
	<p align="center"><img src="http://www.comercialmoyano.com/img/italia.png" alt="Made in Italy" title="Made in Italy" align="absmiddle" /></p>
<!--madeinitaly-->
<!-- QR Code -->
<p class="codigoqr"><img src="http://chart.apis.google.com/chart?cht=qr&chs=90x90&chl={$plink|escape:'url'}&choe=UTF-8&chld=L|0" alt="Luxury shopping Comercial Moyano" /></p>
                
			{/if}
      
		</div>
		<!-- end center infos-->
		<!-- pb-right-column-->
		<div class="pb-right-column col-xs-12 col-sm-4 col-md-3">
			{if ($product->show_price && !isset($restricted_country_mode)) || isset($groups) || $product->reference || (isset($HOOK_PRODUCT_ACTIONS) && $HOOK_PRODUCT_ACTIONS)}
			<!-- add to cart form-->
			<form id="buy_block"{if $PS_CATALOG_MODE && !isset($groups) && $product->quantity > 0} class="hidden"{/if} action="{$link->getPageLink('cart')|escape:'html':'UTF-8'}" method="post">
				<!-- hidden datas -->
				<p class="hidden">
					<input type="hidden" name="token" value="{$static_token}" />
					<input type="hidden" name="id_product" value="{$product->id|intval}" id="product_page_product_id" />
					<input type="hidden" name="add" value="1" />
					<input type="hidden" name="id_product_attribute" id="idCombination" value="" />
				</p>
				<div class="box-info-product">
					<div class="content_prices clearfix">
						{if $product->show_price && !isset($restricted_country_mode) && !$PS_CATALOG_MODE}
							<!-- prices -->
							<div class="price">
								<p class="our_price_display" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
									{if $product->quantity > 0}<link itemprop="availability" href="http://schema.org/InStock"/>{/if}
									{if $priceDisplay >= 0 && $priceDisplay <= 2}
										<span id="our_price_display" itemprop="price">{convertPrice price=$productPrice}</span>
										<!--{if $tax_enabled  && ((isset($display_tax_label) && $display_tax_label == 1) || !isset($display_tax_label))}
											{if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}
										{/if}-->
										<meta itemprop="priceCurrency" content="{$currency->iso_code}" />
										{hook h="displayProductPriceBlock" product=$product type="price"}
									{/if}
								</p>
								<p id="reduction_percent" {if !$product->specificPrice || $product->specificPrice.reduction_type != 'percentage'} style="display:none;"{/if}>
									<span id="reduction_percent_display">
										{if $product->specificPrice && $product->specificPrice.reduction_type == 'percentage'}-{$product->specificPrice.reduction*100}%{/if}
									</span>
								</p>
								<p id="reduction_amount" {if !$product->specificPrice || $product->specificPrice.reduction_type != 'amount' || $product->specificPrice.reduction|floatval ==0} style="display:none"{/if}>
									<span id="reduction_amount_display">
									{if $product->specificPrice && $product->specificPrice.reduction_type == 'amount' && $product->specificPrice.reduction|floatval !=0}
										-{convertPrice price=$productPriceWithoutReduction-$productPrice|floatval}
									{/if}
									</span>
								</p>
								<p id="old_price"{if (!$product->specificPrice || !$product->specificPrice.reduction) && $group_reduction == 0} class="hidden"{/if}>
									{if $priceDisplay >= 0 && $priceDisplay <= 2}
										{hook h="displayProductPriceBlock" product=$product type="old_price"}
										<span id="old_price_display">{if $productPriceWithoutReduction > $productPrice}{convertPrice price=$productPriceWithoutReduction}{/if}</span>
										<!-- {if $tax_enabled && $display_tax_label == 1}{if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}{/if} -->
									{/if}
								</p>
								{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}
							</div> <!-- end prices -->
							{if $packItems|@count && $productPrice < $product->getNoPackPrice()}
								<p class="pack_price">{l s='Instead of'} <span style="text-decoration: line-through;">{convertPrice price=$product->getNoPackPrice()}</span></p>
							{/if}
							{if $product->ecotax != 0}
								<p class="price-ecotax">{l s='Include'} <span id="ecotax_price_display">{if $priceDisplay == 2}{$ecotax_tax_exc|convertAndFormatPrice}{else}{$ecotax_tax_inc|convertAndFormatPrice}{/if}</span> {l s='For green tax'}
									{if $product->specificPrice && $product->specificPrice.reduction}
									<br />{l s='(not impacted by the discount)'}
									{/if}
								</p>
							{/if}
							{if !empty($product->unity) && $product->unit_price_ratio > 0.000000}
								{math equation="pprice / punit_price"  pprice=$productPrice  punit_price=$product->unit_price_ratio assign=unit_price}
								<p class="unit-price"><span id="unit_price_display">{convertPrice price=$unit_price}</span> {l s='per'} {$product->unity|escape:'html':'UTF-8'}</p>
								{hook h="displayProductPriceBlock" product=$product type="unit_price"}
							{/if}
						{/if} {*close if for show price*}
						{hook h="displayProductPriceBlock" product=$product type="weight"}
						<div class="clear"></div>
                        <p style="font-size:11px; line-height:13px" align="center">{l s='texto2'}<br>{l s='texto3'}</p>
                        
					</div> <!-- end content_prices -->
					<div class="product_attributes clearfix">
						<!-- quantity wanted -->
						{if !$PS_CATALOG_MODE}
						<p id="quantity_wanted_p"{if (!$allow_oosp && $product->quantity <= 0) || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}>
							<label>{l s='Quantity:'}</label>
							<input type="text" name="qty" id="quantity_wanted" class="text" value="{if isset($quantityBackup)}{$quantityBackup|intval}{else}{if $product->minimal_quantity > 1}{$product->minimal_quantity}{else}1{/if}{/if}" />
							<a href="#" data-field-qty="qty" class="btn btn-default button-minus product_quantity_down">
								<span><i class="icon-minus"></i></span>
							</a>
							<a href="#" data-field-qty="qty" class="btn btn-default button-plus product_quantity_up">
								<span><i class="icon-plus"></i></span>
							</a>
							<span class="clearfix"></span>
						</p>
						{/if}
						<!-- minimal quantity wanted -->
						<p id="minimal_quantity_wanted_p"{if $product->minimal_quantity <= 1 || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}>
							{l s='This product is not sold individually. You must select at least'} <b id="minimal_quantity_label">{$product->minimal_quantity}</b> {l s='quantity for this product.'}
						</p>
						{if isset($groups)}
							<!-- attributes -->
							<div id="attributes">
								<div class="clearfix"></div>
								{foreach from=$groups key=id_attribute_group item=group}
									{if $group.attributes|@count}
										<fieldset class="attribute_fieldset">
											<label class="attribute_label" {if $group.group_type != 'color' && $group.group_type != 'radio'}for="group_{$id_attribute_group|intval}"{/if}>{$group.name|escape:'html':'UTF-8'} : </label>
											{assign var="groupName" value="group_$id_attribute_group"}
											<div class="attribute_list">
												{if ($group.group_type == 'select')}
													<select name="{$groupName}" id="group_{$id_attribute_group|intval}" class="form-control attribute_select no-print">
														{foreach from=$group.attributes key=id_attribute item=group_attribute}
															<option value="{$id_attribute|intval}"{if (isset($smarty.get.$groupName) && $smarty.get.$groupName|intval == $id_attribute) || $group.default == $id_attribute} selected="selected"{/if} title="{$group_attribute|escape:'html':'UTF-8'}">{$group_attribute|escape:'html':'UTF-8'}</option>
														{/foreach}
													</select>
												{elseif ($group.group_type == 'color')}
													<ul id="color_to_pick_list" class="clearfix">
														{assign var="default_colorpicker" value=""}
														{foreach from=$group.attributes key=id_attribute item=group_attribute}
															{assign var='img_color_exists' value=file_exists($col_img_dir|cat:$id_attribute|cat:'.jpg')}
															<li{if $group.default == $id_attribute} class="selected"{/if}>
																<a href="{$link->getProductLink($product)|escape:'html':'UTF-8'}" id="color_{$id_attribute|intval}" name="{$colors.$id_attribute.name|escape:'html':'UTF-8'}" class="color_pick{if ($group.default == $id_attribute)} selected{/if}"{if !$img_color_exists && isset($colors.$id_attribute.value) && $colors.$id_attribute.value} style="background:{$colors.$id_attribute.value|escape:'html':'UTF-8'};"{/if} title="{$colors.$id_attribute.name|escape:'html':'UTF-8'}">
																	{if $img_color_exists}
																		<img src="{$img_col_dir}{$id_attribute|intval}.jpg" alt="{$colors.$id_attribute.name|escape:'html':'UTF-8'}" title="{$colors.$id_attribute.name|escape:'html':'UTF-8'}" width="20" height="20" />
																	{/if}
																</a>
															</li>
															{if ($group.default == $id_attribute)}
																{$default_colorpicker = $id_attribute}
															{/if}
														{/foreach}
													</ul>
													<input type="hidden" class="color_pick_hidden" name="{$groupName|escape:'html':'UTF-8'}" value="{$default_colorpicker|intval}" />
												{elseif ($group.group_type == 'radio')}
													<ul>
														{foreach from=$group.attributes key=id_attribute item=group_attribute}
															<li>
																<input type="radio" class="attribute_radio" name="{$groupName|escape:'html':'UTF-8'}" value="{$id_attribute}" {if ($group.default == $id_attribute)} checked="checked"{/if} />
																<span>{$group_attribute|escape:'html':'UTF-8'}</span>
															</li>
														{/foreach}
													</ul>
												{/if}
											</div> <!-- end attribute_list -->
										</fieldset>
									{/if}
								{/foreach}
							</div> <!-- end attributes -->
						{/if}
					</div> <!-- end product_attributes -->
                    
					<div class="box-cart-bottom">
<!--mío-->	

<!--fin mío-->                    
						<div{if (!$allow_oosp && $product->quantity <= 0) || !$product->available_for_order || (isset($restricted_country_mode) && $restricted_country_mode) || $PS_CATALOG_MODE} class="unvisible"{/if}>
							<p id="add_to_cart" class="buttons_bottom_block no-print">
								<button type="submit" name="Submit" class="exclusive">
									<span>{l s='Add to cart'}</span>
								</button>
							</p>
						</div>
						{if isset($HOOK_PRODUCT_ACTIONS) && $HOOK_PRODUCT_ACTIONS}{$HOOK_PRODUCT_ACTIONS}{/if}<strong></strong>
					</div> <!-- end box-cart-bottom -->
                    
                    
				</div> <!-- end box-info-product -->
			</form>
			{/if}
		</div> <!-- end pb-right-column-->
	</div> <!-- end primary_block -->
    
	{if !$content_only}
{if (isset($quantity_discounts) && count($quantity_discounts) > 0)}
			<!-- quantity discount -->
			<section class="page-product-box">
				<h3 class="page-product-heading">{l s='Volume discounts'}</h3>
				<div id="quantityDiscount">
					<table class="std table-product-discounts">
						<thead>
							<tr>
								<th>{l s='Quantity'}</th>
								<th>{if $display_discount_price}{l s='Price'}{else}{l s='Discount'}{/if}</th>
								<th>{l s='You Save'}</th>
							</tr>
						</thead>
						<tbody>
							{foreach from=$quantity_discounts item='quantity_discount' name='quantity_discounts'}
							<tr id="quantityDiscount_{$quantity_discount.id_product_attribute}" class="quantityDiscount_{$quantity_discount.id_product_attribute}" data-discount-type="{$quantity_discount.reduction_type}" data-discount="{$quantity_discount.real_value|floatval}" data-discount-quantity="{$quantity_discount.quantity|intval}">
								<td>
									{$quantity_discount.quantity|intval}
								</td>
								<td>
									{if $quantity_discount.price >= 0 || $quantity_discount.reduction_type == 'amount'}
										{if $display_discount_price}
											{convertPrice price=$productPrice-$quantity_discount.real_value|floatval}
										{else}
											{convertPrice price=$quantity_discount.real_value|floatval}
										{/if}
									{else}
										{if $display_discount_price}
											{convertPrice price = $productPrice-($productPrice*$quantity_discount.reduction)|floatval}
										{else}
											{$quantity_discount.real_value|floatval}%
										{/if}
									{/if}
								</td>
								<td>
									<span>{l s='Up to'}</span>
									{if $quantity_discount.price >= 0 || $quantity_discount.reduction_type == 'amount'}
										{$discountPrice=$productPrice-$quantity_discount.real_value|floatval}
									{else}
										{$discountPrice=$productPrice-($productPrice*$quantity_discount.reduction)|floatval}
									{/if}
									{$discountPrice=$discountPrice*$quantity_discount.quantity}
									{$qtyProductPrice = $productPrice*$quantity_discount.quantity}
									{convertPrice price=$qtyProductPrice-$discountPrice}
								</td>
							</tr>
							{/foreach}
						</tbody>
					</table>
				</div>
			</section>
		{/if}

<!-- description and features -->
{if (isset($product) && $product->description) || (isset($features) && $features) || (isset($accessories) && $accessories) || (isset($HOOK_PRODUCT_TAB) && $HOOK_PRODUCT_TAB) || (isset($attachments) && $attachments) || isset($product) && $product->customizable}
<div id="more_info_block" class="clear">
    <ul id="more_info_tabs" class="idTabs idTabsShort clearfix">
        {if isset($accessories) AND $accessories}<li><a href="#idTab4">{l s='Accessories'}</a></li>{/if}
        {if isset($product) && $product->customizable}<li><a href="#idTab10">{l s='Product customization'}</a></li>{/if}
        {if $product->description}<li><a id="more_info_tab_more_info" href="#idTab1">{l s='More info'}</a></li>{/if}
   <!-- {if $features}<li><a id="more_info_tab_data_sheet" href="#idTab2">{l s='Data sheet'}</a></li>{/if} -->
        {if $attachments}<li><a id="more_info_tab_attachments" href="#idTab9">{l s='Download'}</a></li>{/if}
        {$HOOK_PRODUCT_TAB}
    </ul>
    <div id="more_info_sheets" class="sheets align_justify">
    {if isset($product) && $product->description}
        <!-- full description -->
        <div id="idTab1" class="rte">{$product->description}</div>
    {/if}
    
 <!-- product's features -->
 
  {if isset($features) && $features}
        
        <ul id="idTab2" class="rte block_hidden_only_for_screen">
        {foreach from=$features item=feature}
            {if isset($feature.value)}
                <li><span>{$feature.name|escape:'htmlall':'UTF-8'}</span> {$feature.value|escape:'htmlall':'UTF-8'}</li>
            {/if}
        {/foreach}
        </ul>
    {/if}
        
    
    {if isset($attachments) && $attachments}
        <ul id="idTab9" class="bullet">
        {foreach from=$attachments item=attachment}
            <li><a href="{$link->getPageLink('attachment', true, NULL, "id_attachment={$attachment.id_attachment}")|escape:'html'}">{$attachment.name|escape:'htmlall':'UTF-8'}</a><br />{$attachment.description|escape:'htmlall':'UTF-8'}</li>
        {/foreach}
        </ul>
    {/if}
    {if isset($accessories) AND $accessories}
        <!-- accessories -->
        <div id="idTab4" class="bullet">
            <div class="block products_block accessories_block clearfix">
                <div class="block_content">
  			<h6>
				<img src="{$img_dir}icon/infos.gif" alt="Informations" />
				{l s='texto1'}
            </h6>
                    <ul>
							{foreach from=$accessories item=accessory name=accessories_list}
								{if ($accessory.allow_oosp || $accessory.quantity_all_versions > 0 || $accessory.quantity > 0) && $accessory.available_for_order && !isset($restricted_country_mode)}
									{assign var='accessoryLink' value=$link->getProductLink($accessory.id_product, $accessory.link_rewrite, $accessory.category)}
									<li class="item product-box ajax_block_product{if $smarty.foreach.accessories_list.first} first_item{elseif $smarty.foreach.accessories_list.last} last_item{else} item{/if} product_accessories_description">
										<div class="product_desc">
											<a href="{$accessoryLink|escape:'html':'UTF-8'}" title="{$accessory.legend|escape:'html':'UTF-8'}" class="product-image product_image" target="_blank"> 
												<img class="lazyOwl" src="{$link->getImageLink($accessory.link_rewrite, $accessory.id_image, 'home_default')|escape:'html':'UTF-8'}" alt="{$accessory.legend|escape:'html':'UTF-8'}" width="{$homeSize.width}" height="{$homeSize.height}"/>
											</a>
										<!--<div class="block_description">
												<a href="{$accessoryLink|escape:'html':'UTF-8'}" title="{l s='More'}" class="product_description">
													{$accessory.description_short|strip_tags|truncate:25:'...'}
												</a>
											</div>-->
										</div>
										<div class="s_title_block" align="center">
											<h5 class="product-name">
												<a href="{$accessoryLink|escape:'html':'UTF-8'}" target="_blank">
													{$accessory.name|truncate:20:'...':true|escape:'html':'UTF-8'}
												</a>
											</h5>
											{if $accessory.show_price && !isset($restricted_country_mode) && !$PS_CATALOG_MODE}
											<span class="price">
												{if $priceDisplay != 1}
												{displayWtPrice p=$accessory.price}{else}{displayWtPrice p=$accessory.price_tax_exc}
												{/if}
											</span>
											{/if}
										</div>
								<!--		<div class="clearfix" style="margin-top:5px" align="center">
											{if !$PS_CATALOG_MODE && ($accessory.allow_oosp || $accessory.quantity > 0)}
												<div class="no-print">
													<a class="exclusive button ajax_add_to_cart_button" href="{$link->getPageLink('cart', true, NULL, "qty=1&id_product={$accessory.id_product|intval}&token={$static_token}&add")|escape:'html':'UTF-8'}" data-id-product="{$accessory.id_product|intval}" title="{l s='Add to cart'}">
														<span>{l s='Add to cart'}</span>
													</a>
												</div>
											{/if}
										</div> -->
									</li>
								{/if}
							{/foreach}
                    </ul>
                </div>
            </div>
        </div>
    {/if}
  
    <!-- Customizable products -->
    {if isset($product) && $product->customizable}
        <div id="idTab10" class="bullet customization_block">
            <form method="post" action="{$customizationFormTarget}" enctype="multipart/form-data" id="customizationForm" class="clearfix">
                <p class="infoCustomizable">
                    {if $product->uploadable_files}
                    {l s='Allowed file formats are: GIF, JPG, PNG'}{/if}
                </p>
                {if $product->uploadable_files|intval}
                <div class="customizableProductsFile">
                    <h3 class="infoCustomizable">{l s='Pictures'}</h3>
                    <ul id="uploadable_files" class="clearfix">
                        {counter start=0 assign='customizationField'}
                        {foreach from=$customizationFields item='field' name='customizationFields'}
                            {if $field.type == 0}
                                <li class="customizationUploadLine{if $field.required} required{/if}">{assign var='key' value='pictures_'|cat:$product->id|cat:'_'|cat:$field.id_customization_field}
                                    {if isset($pictures.$key)}
                                    <div class="customizationUploadBrowse">
                                        <img src="{$pic_dir}{$pictures.$key}_small" alt="" />
                                        <a href="{$link->getProductDeletePictureLink($product, $field.id_customization_field)|escape:'html'}" title="{l s='Delete'}" >
                                            <img src="{$img_dir}icon/delete.gif" alt="{l s='Delete'}" class="customization_delete_icon" width="11" height="13" />
                                        </a>
                                    </div>
                                    {/if}
                                    <div class="customizationUploadBrowse">
                                        <label class="customizationUploadBrowseDescription">{if !empty($field.name)}{$field.name}{else}{l s='Please select an image file from your computer'}{/if}{if $field.required}<sup>*</sup>{/if}</label>
                                        <input type="file" name="file{$field.id_customization_field}" id="img{$customizationField}" class="customization_block_input {if isset($pictures.$key)}filled{/if}" />
                                    </div>
                                </li>
                                {counter}
                            {/if}
                        {/foreach}
                    </ul>
                </div>
                {/if}
                {if $product->text_fields|intval}
                <div class="customizableProductsText">
                    <h3 class="infoCustomizable">{l s='Text'}</h3>
                    <ul id="text_fields">
                    {counter start=0 assign='customizationField'}
                    {foreach from=$customizationFields item='field' name='customizationFields'}
                        {if $field.type == 1}
                        <li class="customizationUploadLine{if $field.required} required{/if}">
                            <label for ="textField{$customizationField}">{assign var='key' value='textFields_'|cat:$product->id|cat:'_'|cat:$field.id_customization_field} {if !empty($field.name)}{$field.name}{/if}{if $field.required}<sup>*</sup>{/if}</label>
                            <textarea name="textField{$field.id_customization_field}" id="textField{$customizationField}" rows="1" cols="40" class="customization_block_input">{if isset($textFields.$key)}{$textFields.$key|stripslashes}{/if}</textarea>
                        </li>
                        {counter}
                        {/if}
                    {/foreach}
                    </ul>
                </div>
                {/if}
            <p class="clear required"><sup>*</sup> {l s='required fields'}</p>
                <p id="customizedDatas">
                    <input type="hidden" name="quantityBackup" id="quantityBackup" value="" />
                    <input type="hidden" name="submitCustomizedDatas" value="1" />
                    <input type="button" class="button" value="{l s='Save'}" onclick="javascript:saveCustomization()" />
                    <span id="ajax-loader" style="display:none"><img src="{$img_ps_dir}loader.gif" alt="loader" /></span>
                </p>
            </form>
            
  			<h4 style="color:#C00" align="right">
				<img src="{$img_dir}icon/infos.gif" alt="Informations" />
				{l s='After saving your customized product, remember to add it to your cart.'}
            </h4>

        </div>
    {/if}
  
    {if isset($HOOK_PRODUCT_TAB_CONTENT) && $HOOK_PRODUCT_TAB_CONTENT}{$HOOK_PRODUCT_TAB_CONTENT}{/if}
    </div>
</div>
{/if}
{if isset($packItems) && $packItems|@count > 0}
    <div id="blockpack">
        <h2>{l s='Pack content'}</h2>
        {include file="$tpl_dir./product-list.tpl" products=$packItems}
    </div>
{/if}

	{/if}
</div> <!-- itemscope product wrapper -->

<!--relacionados-->
{if isset($HOOK_PRODUCT_FOOTER) && $HOOK_PRODUCT_FOOTER}{$HOOK_PRODUCT_FOOTER}{/if}
<!--fin relacionados-->


{strip}
{if isset($smarty.get.ad) && $smarty.get.ad}
	{addJsDefL name=ad}{$base_dir|cat:$smarty.get.ad|escape:'html':'UTF-8'}{/addJsDefL}
{/if}
{if isset($smarty.get.adtoken) && $smarty.get.adtoken}
	{addJsDefL name=adtoken}{$smarty.get.adtoken|escape:'html':'UTF-8'}{/addJsDefL}
{/if}
{addJsDef allowBuyWhenOutOfStock=$allow_oosp|boolval}
{addJsDef availableNowValue=$product->available_now|escape:'quotes':'UTF-8'}
{addJsDef availableLaterValue=$product->available_later|escape:'quotes':'UTF-8'}
{addJsDef attribute_anchor_separator=$attribute_anchor_separator|addslashes}
{addJsDef attributesCombinations=$attributesCombinations}
{addJsDef currencySign=$currencySign|html_entity_decode:2:"UTF-8"}
{addJsDef currencyRate=$currencyRate|floatval}
{addJsDef currencyFormat=$currencyFormat|intval}
{addJsDef currencyBlank=$currencyBlank|intval}
{addJsDef currentDate=$smarty.now|date_format:'%Y-%m-%d %H:%M:%S'}
{if isset($combinations) && $combinations}
	{addJsDef combinations=$combinations}
	{addJsDef combinationsFromController=$combinations}
	{addJsDef displayDiscountPrice=$display_discount_price}
	{addJsDefL name='upToTxt'}{l s='Up to' js=1}{/addJsDefL}
{/if}
{if isset($combinationImages) && $combinationImages}
	{addJsDef combinationImages=$combinationImages}
{/if}
{addJsDef customizationFields=$customizationFields}
{addJsDef default_eco_tax=$product->ecotax|floatval}
{addJsDef displayPrice=$priceDisplay|intval}
{addJsDef ecotaxTax_rate=$ecotaxTax_rate|floatval}
{addJsDef group_reduction=$group_reduction}
{if isset($cover.id_image_only)}
	{addJsDef idDefaultImage=$cover.id_image_only|intval}
{else}
	{addJsDef idDefaultImage=0}
{/if}
{addJsDef img_ps_dir=$img_ps_dir}
{addJsDef img_prod_dir=$img_prod_dir}
{addJsDef id_product=$product->id|intval}
{addJsDef jqZoomEnabled=$jqZoomEnabled|boolval}
{addJsDef maxQuantityToAllowDisplayOfLastQuantityMessage=$last_qties|intval}
{addJsDef minimalQuantity=$product->minimal_quantity|intval}
{addJsDef noTaxForThisProduct=$no_tax|boolval}
{addJsDef customerGroupWithoutTax=$customer_group_without_tax|boolval}
{addJsDef oosHookJsCodeFunctions=Array()}
{addJsDef productHasAttributes=isset($groups)|boolval}
{addJsDef productPriceTaxExcluded=($product->getPriceWithoutReduct(true)|default:'null' - $product->ecotax)|floatval}
{addJsDef productBasePriceTaxExcluded=($product->base_price - $product->ecotax)|floatval}
{addJsDef productBasePriceTaxExcl=($product->base_price|floatval)}
{addJsDef productReference=$product->reference|escape:'html':'UTF-8'}
{addJsDef productAvailableForOrder=$product->available_for_order|boolval}
{addJsDef productPriceWithoutReduction=$productPriceWithoutReduction|floatval}
{addJsDef productPrice=$productPrice|floatval}
{addJsDef productUnitPriceRatio=$product->unit_price_ratio|floatval}
{addJsDef productShowPrice=(!$PS_CATALOG_MODE && $product->show_price)|boolval}
{addJsDef PS_CATALOG_MODE=$PS_CATALOG_MODE}
{if $product->specificPrice && $product->specificPrice|@count}
	{addJsDef product_specific_price=$product->specificPrice}
{else}
	{addJsDef product_specific_price=array()}
{/if}
{if $display_qties == 1 && $product->quantity}
	{addJsDef quantityAvailable=$product->quantity}
{else}
	{addJsDef quantityAvailable=0}
{/if}
{addJsDef quantitiesDisplayAllowed=$display_qties|boolval}
{if $product->specificPrice && $product->specificPrice.reduction && $product->specificPrice.reduction_type == 'percentage'}
	{addJsDef reduction_percent=$product->specificPrice.reduction*100|floatval}
{else}
	{addJsDef reduction_percent=0}
{/if}
{if $product->specificPrice && $product->specificPrice.reduction && $product->specificPrice.reduction_type == 'amount'}
	{addJsDef reduction_price=$product->specificPrice.reduction|floatval}
{else}
	{addJsDef reduction_price=0}
{/if}
{if $product->specificPrice && $product->specificPrice.price}
	{addJsDef specific_price=$product->specificPrice.price|floatval}
{else}
	{addJsDef specific_price=0}
{/if}
{addJsDef specific_currency=($product->specificPrice && $product->specificPrice.id_currency)|boolval} {* TODO: remove if always false *}
{addJsDef stock_management=$stock_management|intval}
{addJsDef taxRate=$tax_rate|floatval}
{addJsDefL name=doesntExist}{l s='This combination does not exist for this product. Please select another combination.' js=1}{/addJsDefL}
{addJsDefL name=doesntExistNoMore}{l s='This product is no longer in stock' js=1}{/addJsDefL}
{addJsDefL name=doesntExistNoMoreBut}{l s='with those attributes but is available with others.' js=1}{/addJsDefL}
{addJsDefL name=fieldRequired}{l s='Please fill in all the required fields before saving your customization.' js=1}{/addJsDefL}
{addJsDefL name=uploading_in_progress}{l s='Uploading in progress, please be patient.' js=1}{/addJsDefL}
{addJsDefL name='product_fileDefaultHtml'}{l s='No file selected' js=1}{/addJsDefL}
{addJsDefL name='product_fileButtonHtml'}{l s='Choose File' js=1}{/addJsDefL}
{/strip}
{/if}

Link to comment
Share on other sites

Las metas se usan si ese dato no está en la vista y puede ser un meta-dato relevante para el producto, así que no lo dupliques y elimina las metas.

 

Si no te sale lo del mpn tampoco es que sea importante.

 

Te recomiendo que te pases por el hilo https://www.prestashop.com/forums/topic/275929-aporte-rich-snippets-para-prestashop-14x-y-15x/

 

Lo acabo de actualizar y más o menos sirve para todas las versiones, al menos tendrás la guia de los richsnippets de Breadcrumb que es lo mismo para todas las versiones y a Google le gustan mucho.

  • Like 1
Link to comment
Share on other sites

Si quieres quitarte las advertencias deberías de hacer un repaso y eliminar los datos que no valgan la pena, mi consejo sería que te quedaras con lo que te pongo en el tutorial, mantuvieras la etiqueta de marca y el marcado de comentarios.

 

No hace falta que envies el itemprop en cada imagen, quédate solo con las que comento en el tutorial que en realidad es solo 1 a la vista.

 

Tienes un condicional con el tipo de producto nuevo, usado y demás utiliza el que pongo en el tutorial que el que tienes no está nada bien.

  • Like 1
Link to comment
Share on other sites

He modificado la disponiblididad con el meta de tu tutorial y he dejado sólo una imagen, la verdad que me cogía las 3 que suelo poner, y seguro que no le hacía mucha gracia a guugle :rolleyes:

 

Lo del estado del producto era tal cual viene en la plantilla por defecto, lo único que le he añadido es el "display:none" para que no me salga en el front. Estoy repasando el tutorial pero no veo nada de el estado del producto, la verdad que estoy por eliminarlo, todo lo que vendo en mi tienda es nuevo, pero no sé si es necesario para google :huh:

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

  • 4 weeks later...

Hola a todos,

 

Mi pregunta es la siguiente. Yo conseguí implementarlos en principio correctamente, según indica el test de google, del cual dejo adjunto una imagen. El problema es que hace unos 2 meses que los activé, pero aun no salen en las búsquedas. Sabéis por que?

 

Gracias

post-447445-0-92951700-1428490314_thumb.jpg

Link to comment
Share on other sites

Os aviso que no es nada recomendable configurar los rich snippets en las listas de productos, no os servirá de nada y os perjudicará en el SEO.

 

Igual que el contenido duplicado, si tienes el rich snippets del producto específico para que lo queréis mandar en el listado de productos?

 

Leeros esto por favor https://support.google.com/webmasters/answer/146750

 

y para los perezosos copio el párrafo concreto de Google ;)

CUIDADO:

 

GOOGLE ya ha cambiado la política, y ya soporta multiproducto en página desde hace poco tiempo. La página española no está aún traducida, de ahí la confusión, y si leéis en el foro inglés de prestashop, se puede observar como en diciembre 2014 ya anunciaban que Google introduciría esta característica muy pronto

 

https://developers.google.com/structured-data/policies

 

Multiple entities on the same page

 

When you have multiple entity types on a page, we recommend you mark up all entities on that page to help Google algorithms better understand and index your content. For example:

 

A recipe page might have text describing the recipe along with an accompanying video. Each of these types should be marked separately with schema.org/Recipe and schema.org/VideoObject respectively.

A category page listing several different products (or recipes, videos, or any other type). Each entity should be marked up using the relevant schema.org type, such as schema.org/Product for product category pages. Marking up just one category entity from all listed on the page is against our guidelines.

A video play page might have related videos embedded in a separate section on the page. In this case, mark up the main video as well as the related videos.

  • Like 1
Link to comment
Share on other sites

Yo tiro la toalla para arreglar los Rich Snippets en 1.6.0.9 con Warehouse 3.2

 

Prestashop default template ya lo ha corregido en 1.6.0.14 POR FIN. Pero es imposible extrapolarlo al Warehouse anterior, hay que actualizar a Warehouse 3.5.1

Así que ni lo intentéis arreglar, más de 3 horas perdidas, a menos que sepáis mucho de lenguaje contextual.

 

Lo único que conseguí fue duplicar el precio, y entonces ya sí lo detectaba bien. (Archivo que os adjunto)

 

Prestashop product-list.tpl 

Se basa en una rama doble, una para el bloque de la izquierda y otro para el bloque derecho. Esto se traduce en que cada producto listado divide su presentación en dos zonas.

Y claro Warehouse pone lo del bloque izquierdo en el derecho y es imposible de arreglar por nosotros. O yo tardaría más horas. Si alguno se atreve...

 

Mi web www.comercialandalucia.es (os adjunto también el que uso ahora)

 

Prestashop ha tardado más de 3 años en corregir este error, como siempre digo, esto es una plataforma que funciona como puede...Aunque bueno, en este caso se ha corregido para aquellos que tengan 1.6.0.14, que por supuesto arregla esto,pero introduce otros errores, así que prudencia.

 

@MarioCM  Si lo ha conseguido, pero su estructura de presentación, no es nada convencional, y cualquiera lo entiende. Es un caso específico.

 

Me parece una locura que hayáis plantado los tpl, a lo bruto en el foro, el post ha quedado ilegible

funciona pero claro el left repite.txt

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

si yo le he tocado bastante porque no necesito presentar los productos con tantas opciones, pero el tutorial que seguí creo que es bastante genérico y supongo que lo podrás adaptar a la plantilla que usas ( en vez de duplicar el precio trata de marcar sólo un grupo completo del itemprop, yo solucioné el problema así)

Link to comment
Share on other sites

El problema del price puede deberse a que se encuentre duplicada la itemprop de offer. Todos los datos de price, currency... han de estar en una única propiedad offer, y no en dos.

 

Si me pasáis una ruta de ejemplo donde os esté dando error puedo mirarlo. El tema tiene muchos posts y desconozco si todos seguís con el problema o no.

Link to comment
Share on other sites

product-list con fallo de google.txt

 

Anda por favor, arréglamelo :( me está afectando bastante al posicionamiento.

Efectivamente, la offer está duplicada.

El .tpl tiene dos ramas, el left block y el right block. El precio aparece en la web en el right block. Hay que quitar la offer del left block, y ponerlo en el derecho.

Ojalá puedas ayudarme, yo estuve 3 horas y no fui capaz.

 

www.comercialandalucia.es

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

No creas que afecta tanto al posicionamiento. ;-)

 

El problema te viene con la parte de itemprop="availability", que está en una nueva itemprop="offers".

 

He movido de sitio la parte de availability, si lo estás mostrando en tu ficha y no lo estás dejando oculto con css seguramente te descuadre algo. Con esto debería funcionarte bien.

 

Solución extensible a todos los theme-default y derivados.

product-list con fallo de google.txt

  • Like 1
Link to comment
Share on other sites

  • 2 months later...

Entonces como lo habéis arreglado?

 

Mi problema esta en los listados de categorias, marcas, novedades, etc... y en los links de los productos que se muestran cuando haces un pack de productos.

 

Los rich snippet de los productos a secas están correctos y sin errores, los configuré en su día mediante WMT por lo que no creo conveniente seguir el tutorial de "Laboratorio Prestashop", aunque le he echado una ojeada que nunca esta de mas.

 

Los errores que me salen son los mismos que MarioCM, y usando la plantilla default.

 

entonces, ¿que debería hacer para solucionar esto? que ya me tiene loco todo esto y con tantas soluciones que se han dicho y probado ya no se cual es la correcta.

 

Por favor echadme una mano que me tiene desquiciado esto...

Link to comment
Share on other sites

  • 3 months later...

Intenta aplicar la lógica de que todos los price estén dentro de offers. Sobretodo presta atención a los bucles y sentencias condicionales de la plantilla, para que nada se salga de su sitio.

 

Al final es cuestión de cumplir con schema.org

Link to comment
Share on other sites

  • 3 months later...

 

El problema que está dando básicamente en algunas plantillas es que en las páginas de productos product-list.tpl

se está dejando información básica para la validación del schema.org desde webmasterstools.

 

Ocurre lo siguiente.

 

En algunas plantillas el campo pricecurrency del esquema lo deja = 0 cuando tiene que ser = EUR (en el caso de euros)

para arreglar esto en el product-list.tpl fijaros que tienen que quedar así todas las referencias a pricecurrency:

<meta itemprop="priceCurrency" content="{$currency->iso_code}" />

por otra parte es importante que el elemento del esquema que nos dice si el producto está en stock tiene que contener también el precio y la moneda igual que se muestra a continuación.

 

Item 1
type:	http://schema.org/offer
property:	
    availability:	http://schema.org/InStock
    price:	        50 €
    pricecurrency:	EUR

 

debería quedar más o menos así

<span itemprop="offers" itemscope itemtype="http://schema.org/Offer" class="availability">
    {if ($product.allow_oosp || $product.quantity > 0)}
    <span class="{if $product.quantity <= 0}out-of-stock{else}available-now{/if}">
        <link itemprop="availability" href="http://schema.org/InStock" />{if $product.quantity <= 0}{if $product.allow_oosp}{$product.available_later}{else}{l s='Out of stock'}{/if}{else}{if isset($product.available_now) && $product.available_now}{$product.available_now}{else}{l s='In Stock'}{/if}{/if}
        <span itemprop="price"> {if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>
        <meta itemprop="priceCurrency" content="{$currency->iso_code}" />
    </span>
    {elseif (isset($product.quantity_all_versions) && $product.quantity_all_versions > 0)}
    <span class="available-dif">                                                                                
        <link itemprop="availability" href="http://schema.org/LimitedAvailability" />{l s='Product available with different options'}
        <span itemprop="price"> {if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>
        <meta itemprop="priceCurrency" content="{$currency->iso_code}" />
    </span>
    {else}
    <span class="out-of-stock">                                                                                
        <link itemprop="availability" href="http://schema.org/OutOfStock" />{l s='Out of stock'}
        <span itemprop="price"> {if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span>                                                                                
        <meta itemprop="priceCurrency" content="{$currency->iso_code}" />
    </span>
    {/if}
</span>

Sencillamente perfecto, implementé el código en la propiedad y funciona geniaaaaal !! muchas gracias por el aporte...

 

Pedro...

 

Tienda de Poker

Link to comment
Share on other sites

  • 8 months later...

Hola mi codigo en prestashop 1.6 es el siguiente y no veo donde hacer los cambios para eliminar el signo € o para que no entre en os datos estructurados

 

 

 

<!-- prices -->
<div class="price">
<p class="our_price_display" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
{if $product->quantity > 0}<link itemprop="availability" href="http://schema.org/InStock"/>{/if}
{if $priceDisplay >= 0 && $priceDisplay <= 2}
<span id="our_price_display" itemprop="price">{convertPrice price=$productPrice}</span>
<!--{if $tax_enabled  && ((isset($display_tax_label) && $display_tax_label == 1) || !isset($display_tax_label))}
{if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}
{/if}-->
<meta itemprop="priceCurrency" content="{$currency->iso_code}" />
{/if}
</p>
 
una ayudita por fis
Link to comment
Share on other sites

  • 4 months later...

A ver familia, me imagino que ya habrá quedado más que resuelto, pero el problema de los precios viene a que a google no le gusta el precio con la moneda junto.

 

Los quiere por separado, con que se cambie la parte que pone el precio (la que pone en una sola etiqueta lo de {convertPrice price=$productPrice})

por:

<meta itemprop="price" content="{$productPrice}" />
<meta itemprop="priceCurrency" content="{$currency->iso_code}" />
 
ya va.
 
Un saludo!
  • Thanks 1
Link to comment
Share on other sites

  • 2 months later...

Llevo ya dos o tres noches perdidas por el problema de los precios en los datos estructurados de google.

Se que este hilo es un poco antiguo pero de todos los que he leido me parece el más interesante y acertado, aunque yo me sienta incapaz de solucionarlo por mi mismo.

 

He realizado muchas pruebas y ninguna ha terminado bien.

 

Yo estoy con prestashop 1.6.1.11 y con un tema de leodigital version 1.0

 

En estos momentos el codigo lo tengo de la siguiente manera:

<!-- prices -->
<div class="price" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
	<p class="our_price_display" itemprop="offers" itemscope itemtype="https://schema.org/Offer">{strip}
			{if $product->quantity > 0}<link itemprop="availability" href="https://schema.org/InStock"/>{/if}
			{if $priceDisplay >= 0 && $priceDisplay <= 2}
				<span id="our_price_display" itemprop="price" content="{$productPrice}">{convertPrice price=$productPrice|floatval}</span>
				{if $tax_enabled  && ((isset($display_tax_label) && $display_tax_label == 1) || !isset($display_tax_label))}
					{if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}
				{/if}
				<meta itemprop="priceCurrency" content="{$currency->iso_code}" />
				{hook h="displayProductPriceBlock" product=$product type="price"}
				{/if}
		{/strip}</p>
		<p id="reduction_percent" {if $productPriceWithoutReduction <= 0 || !$product->specificPrice || $product->specificPrice.reduction_type != 'percentage'} style="display:none;"{/if}>{strip}
			<span id="reduction_percent_display">
				{if $product->specificPrice && $product->specificPrice.reduction_type == 'percentage'}-{$product->specificPrice.reduction*100}%{/if}
			</span>
		{/strip}</p>

			<p id="old_price"{if (!$product->specificPrice || !$product->specificPrice.reduction)} class="hidden"{/if}>{strip}
		{if $priceDisplay >= 0 && $priceDisplay <= 2}
			{hook h="displayProductPriceBlock" product=$product type="old_price"}
				<span id="old_price_display">{if $productPriceWithoutReduction > $productPrice}{convertPrice price=$productPriceWithoutReduction|floatval}{/if}{if $tax_enabled && $display_tax_label == 1} {if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}{/if}</span>
		{/if}
	{/strip}</p>
	{if $priceDisplay == 2}
		<br />
		<span id="pretaxe_price">{strip}
			<span id="pretaxe_price_display">{convertPrice price=$product->getPrice(false, $smarty.const.NULL)}</span> {l s='tax excl.'}
			{/strip}</span>
	{/if}
</div> <!-- end prices -->

a ver si alguien me puede ayudar un poquito, por que si no tendré que desistir :-(

Link to comment
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...