Hola,
a ver si me podéis echar una mano porque no se solucionar esto. Tengo un página de producto poor ejemplo http://areab2b.lenubu.com/es/inicio/8-classic-7-speed-aqua.html que como veis muestra la galeria de imágenes de forma vertical, quiero que la muestre de forma horizontal y debajo de la imagen principal.
He copiado el código del product.tpl del theme por defecto para ver si lo corrige y nada, también he copiado el código del product.tpl de la plantilla minimal(una free bastante común) y lo he subido y el resultado es el actual
¿dónde y cómo hay que modificar esa galería para que salga en horizontal debajo de la imagen principal?
Gracias
URL del sitio: Contenido solo visible a usuarios registrados
Hola
Depende de tu theme, es decir veo por ejemplo que si haces click en alguna imagen se abre una nueva ventana con la imagen, esto es asi en tu theme original?, puedes enviarnos el link desde donde descargaste el theme para verificar.
Saludos.
El theme es este http://www.templatemonster.com/demo/54008.html
Gracias por la ayuda!
Hola
El diseño de las miniaturas es vertical en la demo de la plantilla.
http://livedemo00.template-help.com/prestashop_54008/index.php?id_product=3&controller=product&id_lang=4
De manera general depende de la estructura, lo veo complicado cambiarlo a horizontal, mejor evalúa otro theme que tenga esta estructura.
Saludos
Hola,
ok, opto entonces por otra solución pero en esta también tengo dudas.
Dejando el theme original necesitaría que en la página de producto se imprimiera, a la derecha de la imagen, la descripción corta que completas del producto.
Supongo que tengo que insertar algún código en el product.tpl pero no sé que código ni a que altura.
¿Podrías orientarme?? Muchas gracias!!!
El código actual del product.tpl
Hola Pepe,
sí, te cuento. Como sabes cuando creas un producto en prestashop, en la pestaña información tienes dos campos uno que llaman "descripción corta" y otro "descripción"
Pues bien, el theme que viene por defecto en presashop te muestra esta descripción corta entre la imagen del producto y el bloque con el precio y botón de comprar. Ejemplo en http://www.firstbikeespana.es/inicio/9-street-azul-con-freno.html
Sin embargo, en mi página web y con el theme que utilizo no se imprime/muestra la descripción corto. Sólo la larga. Lo que quiero es que al igual que en el ejemplo, el theme muestre la descripción corta entre la imagen y el bloque de comprar
Para ello, entiendo que hay que agregar alguna línea de código en el tpl que os pasaba
Muchas gracias!
Hola Santiago.
Perdona por la demora, lo siento :blush:
Es complicado ya que tienes una versión de pago de la plantilla y no podemos revisarla, el problema lo tenemos si te paso algún código y después no responde, por que igual es bueno para lo que buscamos pero estropeamos otra cosa.
La mejor solución es que te pongas en contacto con los desarrolladores, al ser una plantilla de pago tienes soporte y seguro que te podrán informar mejor que nosotros.
Nota: Me gusta mucho tu producto 😉
Un saludo
Hola Pepe,
no es de pago, es gratuita http://www.templatemonster.com/fashion-store-free-prestashop-theme.html
Lo que necesito es eso, el código en el product.tpl para que muestre la descripción corta.
Si me lo pasas te lo agradezco
Gracias!
El código que hay que añadir para mostrar la descripción corta es
{if $product->description_short || $packItems|@count > 0}
{/if}
{/if}
Ahora tengo el problema que no soy capaz de que se muestre esa descripción corta en a los visitantes. Me explico, en clientes>grupos tengo configurado que sólo los clientes puedan ver los precios.
Por alguna razón, y seguramente debido a la zona del product.tpl en la que inserto el código de la descripción corta, lo toma prestashop como si fuera un precio y solo muestra la descripción corta a los clientes pero no a los visitantes.
Me podrías ayudar a mostrar la descripción corta también a los visitante teniendo en cuenta que la descripción corta la quiero mostrar entre la imagen de producto y el bloque de atributos, precio, carrito..etc??
Gracias!
{include file="$tpl_dir./errors.tpl"} {if (($hide_left_column || $hide_right_column) && ($hide_left_column !='true' || $hide_right_column !='true')) && !$content_only} {assign var="columns" value="2"} {elseif (($hide_left_column && $hide_right_column) && ($hide_left_column =='true' && $hide_right_column =='true')) && !$content_only} {assign var="columns" value="1"} {elseif $content_only} {assign var="columns" value="1"} {else} {assign var="columns" value="3"} {/if} {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, $priceDisplayPrecision)} {elseif $priceDisplay == 1} {assign var='productPrice' value=$product->getPrice(false, $smarty.const.NULL, $priceDisplayPrecision)} {assign var='productPriceWithoutReduction' value=$product->getPriceWithoutReduct(true, $smarty.const.NULL, $priceDisplayPrecision)} {/if}{if !$content_only} {if $product->description || (isset($quantity_discounts) && count($quantity_discounts) > 0) || (isset($features) && $features) || (isset($attachments) && $attachments) || (isset($product) && $product->customizable)}{if isset($adminActionDisplay) && $adminActionDisplay}{/if} {if isset($confirmation) && $confirmation}{l s='This product is not visible to your customers.'} id}" />
{$confirmation}
{/if}{/if} {if isset($images) && count($images) > 1}0} is_caroucel{/if}"> {if $product->new} {l s='New'} {/if} {if $product->on_sale} {l s='Sale!'} {/if} {if $have_image} {if $jqZoomEnabled && $have_image && !$content_only} name|escape:'html':'UTF-8'}{/if}" rel="gal1" href="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'tm_thickbox_default')|escape:'html':'UTF-8'}" itemprop="url"> getImageLink($product->link_rewrite, $cover.id_image, 'tm_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}"/> {else} getImageLink($product->link_rewrite, $cover.id_image, 'tm_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} {l s='View larger'} {/if} {/if} {else} name|escape:'html':'UTF-8'}" width="{$largeSize.width}" height="{$largeSize.height}"/> {if !$content_only} {l s='View larger'} {/if} {/if}{if isset($images) && count($images) > 0} <div id="views_block" class="clearfix{if isset($images) && count($images) {if isset($images) && count($images) > 0} {l s='Previous'} {/if}{if isset($images) && count($images) > 0} {l s='Next'} {/if}{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}
- getImageLink($product->link_rewrite, $imageIds, 'tm_large_default')|escape:'html':'UTF-8'}',largeimage: '{$link->getImageLink($product->link_rewrite, $imageIds, 'tm_thickbox_default')|escape:'html':'UTF-8'}'{literal}}{/literal}" {else} href="{$link->getImageLink($product->link_rewrite, $imageIds, 'tm_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}"> getImageLink($product->link_rewrite, $imageIds, 'tm_cart_default')|escape:'html':'UTF-8'}" alt="{$imageTitle}" title="{$imageTitle}" height="{$cartSize.height}" width="{$cartSize.width}" itemprop="image" />
{/foreach} {/if}getProductLink($product)|escape:'html':'UTF-8'}" data-id="resetImages"> {l s='Display all pictures'}
{/if}{if $product->online_only}{l s='Online only'}
{/if}reference) || !$product->reference} style="display: none;"{/if}> {if !isset($groups)}{$product->reference|escape:'html':'UTF-8'}{/if}
{$product->name|escape:'html':'UTF-8'}
{if $PS_STOCK_MANAGEMENT} {hook h="displayProductDeliveryTime" product=$product}quantity available_later && $allow_oosp) || ($product->quantity > 0 && !$product->available_now) || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}> {*{l s='Availability:'}*} quantity quantity {if $product->quantity available_later}{else}{l s='This product is no longer in stock'}{/if}{elseif $PS_STOCK_MANAGEMENT}{$product->available_now}{/if}
{*{if !$product->is_virtual && $product->condition}{if $product->condition == 'new'} {l s='New product'} {elseif $product->condition == 'used'} {l s='Used'} {elseif $product->condition == 'refurbished'} {l s='Refurbished'} {/if}
{/if} *} {if ($display_qties == 1 && !$PS_CATALOG_MODE && $PS_STOCK_MANAGEMENT && $product->available_for_order)}quantity {$product->quantity|intval} quantity > 1} style="display: none;"{/if} id="quantityAvailableTxt">{l s='Item'} quantity == 1} style="display: none;"{/if} id="quantityAvailableTxtMultiple">{l s='Items'}
{/if}quantity > $last_qties || $product->quantity available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >{l s='Warning: Last items in stock!'}
{/if}quantity > 0) || !$product->available_for_order || $PS_CATALOG_MODE || !isset($product->available_date) || $product->available_date {l s='Availability date:'} {dateFormat date=$product->available_date full=false}
quantity > 0} style="display: none;"{/if}> {$HOOK_PRODUCT_OOS}{if ($product->show_price && !isset($restricted_country_mode)) || isset($groups) || $product->reference || (isset($HOOK_PRODUCT_ACTIONS) && $HOOK_PRODUCT_ACTIONS)} quantity > 0} class="hidden"{/if} action="{$link->getPageLink('cart')|escape:'html':'UTF-8'}" method="post">id|intval}" id="product_page_product_id" />
{/if} {if isset($HOOK_EXTRA_RIGHT) && $HOOK_EXTRA_RIGHT}{if $product->show_price && !isset($restricted_country_mode) && !$PS_CATALOG_MODE}{if $product->description_short || $packItems|@count > 0}specificPrice || !$product->specificPrice.reduction) && $group_reduction == 0} class="unvisible"{/if}> {strip} {if $priceDisplay >= 0 && $priceDisplay <= 2} {hook h="displayProductPriceBlock" product=$product type="old_price"} {if $productPriceWithoutReduction > $productPrice}{convertPrice price=$productPriceWithoutReduction}{/if} {/if} {/strip}
specificPrice || $product->specificPrice.reduction_type != 'percentage'} style="display:none;"{/if}> {strip} {if $product->specificPrice && $product->specificPrice.reduction_type == 'percentage'}-{$product->specificPrice.reduction*100}%{/if} {/strip}
specificPrice || $product->specificPrice.reduction_type != 'amount' || $product->specificPrice.reduction|floatval ==0} style="display:none"{/if}> {strip} {if $product->specificPrice && $product->specificPrice.reduction_type == 'amount' && $product->specificPrice.reduction|floatval !=0} -{convertPrice price=$productPriceWithoutReduction-$productPrice|floatval} {/if} {/strip}
{if $product->description_short}{/if}{$product->description_short}{/if}{strip} {if $product->quantity > 0}{/if} {if $priceDisplay >= 0 && $priceDisplay <= 2} {convertPrice price=$productPrice} {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} iso_code}" /> {hook h="displayProductPriceBlock" product=$product type="price"} {/if} {/strip}
{if $priceDisplay == 2}
{convertPrice price=$product->getPrice(false, $smarty.const.NULL)} {l s='tax excl.'} {/if} {if $packItems|@count && $productPrice getNoPackPrice()}{l s='Instead of'} {convertPrice price=$product->getNoPackPrice()}
{/if} {if $product->ecotax != 0}{l s='Including'} {if $priceDisplay == 2}{$ecotax_tax_exc|convertAndFormatPrice}{else}{$ecotax_tax_inc|convertAndFormatPrice}{/if} {l s='for ecotax'} {if $product->specificPrice && $product->specificPrice.reduction}
{/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}
{l s='(not impacted by the discount)'} {/if}{convertPrice price=$unit_price} {l s='per'} {$product->unity|escape:'html':'UTF-8'}
{hook h="displayProductPriceBlock" product=$product type="unit_price"} {/if} {if ($product->specificPrice && $product->specificPrice.reduction && $productPriceWithoutReduction > $productPrice) && !$product->on_sale} {l s='Reduced price!'} {/if} {/if} {*close if for show price*} {hook h="displayProductPriceBlock" product=$product type="weight"}{if isset($groups)}{foreach from=$groups key=id_attribute_group item=group} {if $group.attributes|@count} {/if} {/foreach}{/if}{if !$PS_CATALOG_MODE}quantity available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}> minimal_quantity > 1}{$product->minimal_quantity}{else}1{/if}{/if}" />
{/if}minimal_quantity available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}> {l s='The minimum purchase order quantity for the product is'} {$product->minimal_quantity}
{if isset($HOOK_PRODUCT_ACTIONS) && $HOOK_PRODUCT_ACTIONS}{$HOOK_PRODUCT_ACTIONS}{/if}{$HOOK_EXTRA_RIGHT}{/if} {if !$content_only}{if $HOOK_EXTRA_LEFT}{$HOOK_EXTRA_LEFT}{/if} {l s='Print'}
{/if}{/if} {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}{if $product->description}
- {l s='More info'}
{/if} {if (isset($quantity_discounts) && count($quantity_discounts) > 0)}- {l s='Volume discounts'}
{/if} {if isset($features) && $features}- {l s='Data sheet'}
{/if} {if isset($attachments) && $attachments} {/if} {if isset($product) && $product->customizable}- {l s='Product customization'}
{/if} {hook h="displayProductVideoTab" product=$product}{if $product->description}{/if} {if (isset($quantity_discounts) && count($quantity_discounts) > 0)}{$product->description}{/if} {if isset($features) && $features}
{foreach from=$quantity_discounts item='quantity_discount' name='quantity_discounts'} {l s='Quantity'} {if $display_discount_price}{l s='Price'}{else}{l s='Discount'}{/if} {l s='You Save'} {/foreach} {$quantity_discount.quantity|intval} {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} {l s='Up to'} {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} {/if} {if isset($attachments) && $attachments} {/if} {if isset($product) && $product->customizable}{foreach from=$features item=feature}
{if isset($feature.value)} {/foreach}{$feature.name|escape:'html':'UTF-8'} {$feature.value|escape:'html':'UTF-8'} {/if}{/if} {hook h="displayProductVideoTabContent" product=$product}{l s='After saving your customized product, remember to add it to your cart.'} {if $product->uploadable_files}
{if $product->uploadable_files|intval}
{l s='Allowed file formats are: GIF, JPG, PNG'}{/if}{/if} {if $product->text_fields|intval}{l s='Pictures'}
{counter start=0 assign='customizationField'} {foreach from=$customizationFields item='field' name='customizationFields'} {if $field.type == 0}
- {assign var='key' value='pictures_'|cat:$product->id|cat:'_'|cat:$field.id_customization_field} {if isset($pictures.$key)} {/if}
{counter} {/if} {/foreach}{/if}{l s='Text'}
{counter start=0 assign='customizationField'} {foreach from=$customizationFields item='field' name='customizationFields'} {if $field.type == 1}
- {counter} {/if} {/foreach}
* {l s='required fields'}
{$HOOK_PRODUCT_TAB} {if isset($HOOK_PRODUCT_TAB_CONTENT) && $HOOK_PRODUCT_TAB_CONTENT}{$HOOK_PRODUCT_TAB_CONTENT}{/if} {if isset($accessories) && $accessories}{/if} {if isset($HOOK_PRODUCT_FOOTER) && $HOOK_PRODUCT_FOOTER}{$HOOK_PRODUCT_FOOTER}{/if} {if isset($packItems) && $packItems|@count > 0} {l s='Accessories'}
{/if} {/if} {l s='Pack content'}
{include file="$tpl_dir./product-list.tpl" products=$packItems}
Hola Santiago.
Prueba a eliminar la primera linea ' {if $product->description_short || $packItems|@count > 0} '
El parámetro $packItems|@count > 0 es el que le indica si se tiene que mostrar o no.
Recuerda eliminar el ultimo {/if} que tienes después de {/if}
ya que ese cierre pertenece a la linea que eliminamos.
Comprueba si con eso se muestra bien.
Nota: Recuerda realizar una copia del archivo antes de cualquier modificación, solo con un copia y pega en el block de notas tendrás suficiente para dejarlo como estaba anteriormente.
Un saludo
Hola Pepe
gracias, no funciona... si no estás logueado no lo muestra, solo logueado he identificado como cliente muestra la descripción corta.
yo creo que el problema no está el código que pego, sino que está en que de alguna manera identifica esa parte del código como como si fuera un precio y sólo se lo muestra a los logueados.
Por ejemplo si pego el código para imprimir la descipción corta al final del product.tpl me la muestra siempre, sea o no sea cliente logueado, pero al ponerlo en la zona en esa linea no lo hace.
El tema es que necesito que la descripción corta se muestre entre la imagen del producto y el bloque de precios y carrito, al estilo del theme original
Alguna idea???
Hola
Envía el archivo que estas modificiando para verificar, es posible que tengas que insertarlo en algun otro lugar.
Puedes adjuntar el archivo en formato .zip
Saludos.
ok, adjunto
si quieres puedes ver el problema en http://areab2b.lenubu.com/es/inicio/8-classic-7-speed.html
y loguearte y desloguearte con mail: prueba@prueba.com y password: prueba
Hola
No se adjuntó, envíalo nuevamente, o mejor subelo a dropbox y envía la url
Saludos.