Modificare il template ps_contactinfo.tpl in PrestaShop
PrestaShop ha un modulo che si chiama Informazioni di Contatto, viene utilizzato per mostrare le informazioni compilate in Parametri Negozio > Contatti > Negozi.
Il modulo ha due template, uno che produce il blocco che vediamo nel footer (ps_contactinfo.tpl) e l’altro nella pagina contatti (ps_contactinfo-rich.tpl)
Per modificarli facciamo un normale override: vanno copiati nella cartella /modules/ps_contactinfo/ del nostro tema Child. Il codice che troviamo ha varie inclusioni Twig, per stampare l’indirizzo c’è questa: {$contact_infos.address.formatted nofilter}
Il codice HTML prodotto è un unico blocco senza stili che elanca i campi: azienda, via, CAP, città, provincia, nazione. Questa soluzione risulta scomoda quando dobbiamo modificare il markup html, ad esempio per applicare uno stile diverso al nome dell’azienda, oppure per togliere o spostare alcune parti.
In realtà la variabile $contact_infos è un array che definisce anche le parti separate, e possiamo usarle come preferiamo:
$contact_infos = [ 'company' => Configuration::get('PS_SHOP_NAME'), 'address' => [ 'formatted' => AddressFormat::generateAddress($address, array(), '<br />'), 'address1' => $address->address1, 'address2' => $address->address2, 'postcode' => $address->postcode, 'city' => $address->city, 'state' => $is_state_multilang ? $state_name[$this->context->language->id] : $state_name, 'country' => (new Country($address->id_country))->name[$this->context->language->id], ], 'phone' => Configuration::get('PS_SHOP_PHONE'), 'fax' => Configuration::get('PS_SHOP_FAX'), 'email' => Configuration::get('PS_SHOP_EMAIL'), ];
Quindi, in alternativa a {$contact_infos.address.formatted} possiamo usare altri codici Twig per ricostruire le parti, ad esempio…
<h3 class="my-cool-company">{$contact_infos.company}</h3> <div class="my-address-formatted"> {$contact_infos.address.address1 nofilter} <br /> {$contact_infos.address.city nofilter} <br /> {$contact_infos.address.postcode nofilter} </div>
Comments (0)