Es cierto que tenemos módulos disponibles en la Comunidad, que nos pueden servir para mostrar “parte” de la información de los proveedores en la ficha del producto en Prestashop 1.6
Otra opción que nos propone “Nemo” en la que no trabajamos con módulos es la siguiente: (Hemos traducido la guía al idioma de Cervantes)
Crear un override en el directorio:
/override/controllers/front/
con el nombre “ProductController.php” y el siguiente contenido
<?php class ProductController extends ProductControllerCore { public function initContent() { parent::initContent(); if($this->product->id_supplier) { $id_supplier_address = Address::getAddressIdBySupplierId($this->product->id_supplier); $supplier_address = new Address($id_supplier_address); } if (Validate::isLoadedObject($supplier_address)) { $this->context->smarty->assign(array( 'supplier_country'=> $supplier_address->country, 'supplier_company'=> $supplier_address->company, 'supplier_address1'=> $supplier_address->address1, 'supplier_postcode'=> $supplier_address->postcode, 'supplier_city'=> $supplier_address->city, 'supplier_phone'=> $supplier_address->phone, 'supplier_state' => State::getNameById($supplier_address->id_state), 'supplier_vat_number'=> $supplier_address->vat_number, )); } } }
El siguiente paso, es ir al fichero: “/themes/tu-plantilla/product.tpl” y añadir el siguiente código:
{if $product->id_supplier} <h4><a href="{$link->getSupplierLink($product->id_supplier)}"><strong>{$product->supplier_name}</strong></a></h4> <ul> <ul> <li>{$supplier_address1}</li> <li>{$supplier_postcode}</li> <li>{$supplier_city}, {$supplier_state}</li> <li>{$supplier_country}</li> </ul> </ul> {if $supplier_vat_number} <ul> <ul> <li>{$supplier_vat_number}</li> </ul> </ul> {/if} {/if}
debajo de:
{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> {l s='Print'} </a></li> </ul> {/if}
A modo de “aclaración” explicó que imprime cada “variable”:
{$supplier_address1}
—-
{$supplier_postcode}
—-
—
{$product->supplier_name}
El resultado final sería el siguiente:
Recordar limpiar cache en la pestaña Parámetros Avanzados -> Rendimiento
Si el override no carga, eliminar fichero /cache/class_index.php
Probado en Prestashop 1.6.1.10
Super, muchas gracias, ¿como puedo hacer para que también salga el logotipo?
Muchas gracias