fxdesca Posted February 22, 2013 Share Posted February 22, 2013 (edited) Bonjour, J'ai (essayé de) modifié la page paiement, order-payment.tpl pour offrir la possibilité aux clients d'avoir un résumé de leur commande. Pour l'instant j'ai réussi a placer le total de la commande ainsi qu'un champ de rappel de leur adresse de livraison et facturation. Le problème c'est que il n'y a pas écrit "adresse de facturation et "adresse de livraison". J'ai essayé de modifié en vain ce bout de code aui génère dynamiquement l'adresse de facturation (invoice) et de livraison (delivery). {foreach $formattedAddresses as $address} <ul style="width:250px;background-color:#f5f5f5;margin-top:20px" class="address {if $address@last}last_item{elseif $address@first}first_item{/if} {if $address@index % 2}alternate_item{else}item{/if}"> <li class="address_title">{$address.object.alias}</li> {foreach $address.ordered as $pattern} {assign var=addressKey value=" "|explode:$pattern} <li> {foreach $addressKey as $key} <span class="{if isset($addresses_style[$key])}{$addresses_style[$key]}{/if}"> {if isset($address.formated[$key])} {$address.formated[$key]|escape:'htmlall':'UTF-8'} {/if} </span> {/foreach} </li> {/foreach} </ul> {/foreach} Ce bout de code génére automatiquement les données des deux adresse, ainsi <li class="address_title">{$address.object.alias}</li> génere le nom que l'on a donné à l'adresse de livraison et a l'adresse de facturation. Ce que je voudrais faire c'est insérer une variable juste au dessus qui rajoute "adresse de livraison" et "adresse de facturation", du genre : si "invoice" <p>adresse facturatio</p> et si "delivery" <p>adresse livraison</p> Les variables que j'ai essayé n'ont pas fonctionné. Et pour abuser un peu, quel bout de code devrais-je reprendre pour afficher le transporteur choisit sur la page paiement? Merci pour votre aide. Edited February 22, 2013 by fxdesca (see edit history) Link to comment Share on other sites More sharing options...
Gus78 Posted May 26, 2014 Share Posted May 26, 2014 Ca date de 3 mois, mais pour ceux que cela intéresse, une solution un peu rustique : {foreach $formattedAddresses as $address} {counter name='compteurAdresses' assign='compteurAdresses'} <ul class="address {if $address@last}last_item{elseif $address@first}first_item{/if} {if $address@index % 2}alternate_item{else}item{/if}" style="width:350px;background-color:#ffffff;border:1px solid #999999;margin-left:10px;"> <li class="address_title"> {if $compteurAdresses == 1} Adresse de livraison {else} Adresse de facturation {/if} </li> <li class="address_title">{$address.object.alias}</li> {foreach $address.ordered as $pattern} {assign var=addressKey value=" "|explode:$pattern} <li> {foreach $addressKey as $key} <span class="{if isset($addresses_style[$key])}{$addresses_style[$key]}{/if}"> {if isset($address.formated[$key])} {$address.formated[$key]|escape:'htmlall':'UTF-8'} {/if} </span> {/foreach} </li> {/foreach} </ul> {/foreach} Link to comment Share on other sites More sharing options...
Regaton Posted March 9, 2016 Share Posted March 9, 2016 (edited) Très intéressant et très utile merci à vous deux. Cependant comment faire pour afficher les infos de livraison quand il s'agit d'un point relais (avec Mondial Relay) ? Et pour mettre le nom de la méthode de transport choisie ? Merci beaucoup de ces infos. Edited March 9, 2016 by Regaton (see edit history) Link to comment Share on other sites More sharing options...
Regaton Posted March 9, 2016 Share Posted March 9, 2016 SI vous souhaitez afficher le nom du transporteur : {$carrier->name|escape:'htmlall':'UTF-8'} Link to comment Share on other sites More sharing options...
KevinNash Posted April 16, 2016 Share Posted April 16, 2016 (edited) La solution propre pour avoir les adresse de livraison et de facturation sur la page de paiement est d'utiliser le même code que celui du résumé du panier shopping-cart.tpl Sous PS 1.5.4.1 dans order-payment.tpl après : {/foreach} </tbody> {/if} </table> </div> {/if} Insérer : {if ((!empty($delivery_option) AND !isset($virtualCart)) OR $delivery->id OR $invoice->id) AND !$opc} <div class="order_delivery clearfix"> {if !isset($formattedAddresses) || (count($formattedAddresses.invoice) == 0 && count($formattedAddresses.delivery) == 0) || (count($formattedAddresses.invoice.formated) == 0 && count($formattedAddresses.delivery.formated) == 0)} {if $delivery->id} <ul id="delivery_address" class="address item"> <li class="address_title">{l s='Delivery address'} <span class="address_alias">({$delivery->alias})</span></li> {if $delivery->company}<li class="address_company">{$delivery->company|escape:'htmlall':'UTF-8'}</li>{/if} <li class="address_name">{$delivery->firstname|escape:'htmlall':'UTF-8'} {$delivery->lastname|escape:'htmlall':'UTF-8'}</li> <li class="address_address1">{$delivery->address1|escape:'htmlall':'UTF-8'}</li> {if $delivery->address2}<li class="address_address2">{$delivery->address2|escape:'htmlall':'UTF-8'}</li>{/if} <li class="address_city">{$delivery->postcode|escape:'htmlall':'UTF-8'} {$delivery->city|escape:'htmlall':'UTF-8'}</li> <li class="address_country">{$delivery->country|escape:'htmlall':'UTF-8'} {if $delivery_state}({$delivery_state|escape:'htmlall':'UTF-8'}){/if}</li> </ul> {/if} {if $invoice->id} <ul id="invoice_address" class="address alternate_item"> <li class="address_title">{l s='Invoice address'} <span class="address_alias">({$invoice->alias})</span></li> {if $invoice->company}<li class="address_company">{$invoice->company|escape:'htmlall':'UTF-8'}</li>{/if} <li class="address_name">{$invoice->firstname|escape:'htmlall':'UTF-8'} {$invoice->lastname|escape:'htmlall':'UTF-8'}</li> <li class="address_address1">{$invoice->address1|escape:'htmlall':'UTF-8'}</li> {if $invoice->address2}<li class="address_address2">{$invoice->address2|escape:'htmlall':'UTF-8'}</li>{/if} <li class="address_city">{$invoice->postcode|escape:'htmlall':'UTF-8'} {$invoice->city|escape:'htmlall':'UTF-8'}</li> <li class="address_country">{$invoice->country|escape:'htmlall':'UTF-8'} {if $invoice_state}({$invoice_state|escape:'htmlall':'UTF-8'}){/if}</li> </ul> {/if} {else} {foreach from=$formattedAddresses key=k item=address} <ul class="address {if $address@last}last_item{elseif $address@first}first_item{/if} {if $address@index % 2}alternate_item{else}item{/if}"> <li class="address_title">{if $k eq 'invoice'}{l s='Invoice address'}{elseif $k eq 'delivery' && $delivery->id}{l s='Delivery address'}{/if}{if isset($address.object.alias)} <span class="address_alias">({$address.object.alias})</span>{/if}</li> {foreach $address.ordered as $pattern} {assign var=addressKey value=" "|explode:$pattern} <li> {foreach $addressKey as $key} <span class="{if isset($addresses_style[$key])}{$addresses_style[$key]}{/if}"> {if isset($address.formated[$key])} {$address.formated[$key]|escape:'htmlall':'UTF-8'} {/if} </span> {/foreach} </li> {/foreach} </ul> {/foreach} <br class="clear"/> {/if} </div> {/if} <br /> Edited April 16, 2016 by KevinNash (see edit history) Link to comment Share on other sites More sharing options...
WPicking Posted March 13, 2017 Share Posted March 13, 2017 Merci Kevin et Gus ces explications. De mon coté, je souhaite modifier les expressions "Choisissez une adresse de livraison" et "votre adresse de livraison", puisque je livre en point relais et l'adresse de mon client n'est pas une adresse de livraison, mais une référence qui permet à Mondial Relay de proposer des magasins susceptibles de prendre en charge le colis. Je ne vois nulle part une expression en anglais ou en français dans les fichiers .css que je pourrais modifier. Je voudrais simplement avoir "Votre adresse". Avez-vous une idée ? Merci beaucoup. Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now