Come gestire la valuta in Magento e creare un sito E-Commerce multi currency

gestire valuta magento

Magento è una piattaforma per lo sviluppo E-Commerce molto versatile e piena di features che aiutano i venditori e gli store manager a far fiorire il proprio business.

La realizzazione di un E-Commerce con Magento ha perciò catturato l’attenzione di tutta la comunità imprenditoriale e attualmente molti hanno scelto questa piattaforma per il loro business.

Magento è un CMS pieno di sfaccettature e ricco di funzionalità: offre ai venditori, una completa flessibilità e un pieno controllo su tutte le opzioni del proprio canale.

Il pannello di amministrazione di Magento è piuttosto intuitivo e tra le sue caratteristiche, c’è la possibilità di gestire più valuta, secondo le proprie esigenze, in modo tale da poter inserire prezzi diversi in base al paese.

Come gestire la valuta (o currency) in pratica

Dopo l’installazione di Magento, potrai notare che è presente una sola valuta da utilizzare per le operazioni di prezzatura degli articoli e di pagamento degli stessi.

Tuttavia, dal pannello di amministrazione del CMS, è possibile aggiungere e gestire le valute più utilizzate, cambiare la visualizzazione del tipo di valuta e in generale, configurare le altre impostazioni.

1) Imposta le Valute in admin

Per aggiungere, modificare e gestire le varie opzioni di base, dovrai accedere al pannello di amministrazione del tuo Magento e seguire questo percorso:   Sistema / Configurazione / Imposta Valuta

Accedendo a questa sezione, ti troverai di fronte un pannello con una serie di opzioni, in cui potrai settare tutte le configurazioni relative alla valuta.

COme impostare le valute in Magento

In particolare potrai configurare nel primo blocco:

  • La valuta di Base (Valuta Base – Base Currency) – Questa è la valuta base utilizzata per le transazioni di pagamento.
  • La valuta che vuoi che appaia sui prezzi dei prodotti (Valuta Visualizzata di Default) – In questa sezione appare un menù a tendina in cui è possibile selezionare la valuta di default utilizzata per mostrare il prezzo dei singoli prodotti. E’ possibile selezionare una valuta di default solo tra quelle che hai abilitato nella sezione “Valute Consentite”.
  • La valuta consentita – (Valute Consentite) – In questa opzione è possibile scegliere il tipo di valuta che vuoi possa essere selezionata sul frontend, oltre a quella di base. Per selezionare più di una valuta, basterà cliccare sul tasto “Ctrl” e cliccare con il tasto sinistro la valute scelte. I prezzi saranno così ri-calcolati in base al tasso che tu hai precedentemente settato nel pannello di amministrazione.

I blocchi che seguono, Webservicex e Importazione Settaggi Programmata, servono per importare le valute da un servizio esterno, in modo tale che le conversioni siano sempre aggiornate. Ovviamente nel caso in cui tu non voglia inserire i tassi di cambio manualmente.

Quindi, abilita anche il modulo “Importazione Settaggi programmata” e salva la configurazione.

In alternativa, puoi provare a programmare questo modulo che usa il convertitore di Valuta di Yahoo al posto di quello di default di Magento. Per maggiori informazioni leggi qui.

2) Configura i tassi di cambio

Ora, apriamo una nuova sezione in Sistema->Gestisci Valuta->Tassi:

Magento Sistema - Manage Currency - Tassi

Una volta che hai aperto la pagina, troverai le varie valute impostate con i tassi di cambio di Magento di Default. Come puoi vedere, al momento il cambio Euro dollaro è 1,4…

Magento Aggiornamento Valute

Visto che le valute cambiano spesso, sarà necessario impostare l’aggiornamento automatico come detto nel punto precedente. Possiamo comunque fare l’aggiornamento manuale cliccando il bottone Importa Webservices. Una volta cliccato il bottone, comparirà un messaggio di successo e come puoi vedere dall’immmagine che segue, il cambioin dollari è cambiato, aggiornato alla data attuale:

Magento Aggiornamento Valute Webservicesx

Fatto questo, come indicato dal messaggio verde, clicca il bottone Salva Quotazioni Valute per salvare l’importazione.

Una volta fatto, riceverai un messaggio di successo comemostrato dall’immagin che segue.

Magento Webservicesx

Fatto questo, hai finito con il settaggio delle opzioni per la valuta.

3) Mostrare il dropdown per il cambio valuta nel frontend

Una volta salvato tutte le configurazioni, andiamo nel frontend e se stiamo usando il tema di base di Magento 1.9, troveremo il blocco per il cambio lingua nella fascia blu in header come mostrato nella prossima screenshot:

Valuta Magento Currency

Come puoi notare, il Dropdown contiene molte informazioni, come il nome esteso della Currency (Euro) e il currency “code” (EUR).

Per valute con nomi corti come Euro, non è un problema, ma per currency con un nome più lungo , come ad esempio “Dollaro Statunitense – USD”, si potrebbero creare problemi di impaginazione nel layout.

Per risolvere questo problema dobbiamo andare e intervenire nei file del template di Magento.

Il file phtml che si occupa di gestire il dropdown della lingua è il file app/design/frontend/PACKAGE/THEME/template/currency/currency.phtml contiene questo codice:

[php]

<?php if($this->getCurrencyCount()>1): ?>
<div class="block block-currency">
<div class="block-title">
<strong><span><?php echo $this->__(‘Select Your Currency’) ?></span></strong>
</div>
<div class="block-content">
<select name="currency" title="<?php echo $this->__(‘Select Your Currency’) ?>" onchange="setLocation(this.value)">
<?php foreach ($this->getCurrencies() as $_code => $_name): ?>
<option value="<?php echo $this->getSwitchCurrencyUrl($_code) ?>"<?php if($_code==$this->getCurrentCurrencyCode()): ?> selected="selected"<?php endif; ?>>
<?php echo $_name ?> – <?php echo $_code ?>
</option>
<?php endforeach; ?>
</select>
</div>
</div>
<?php endif; ?>

[/php]

Se vogliamo modificarlo, creiamo una copia di questo file nella cartella del nostro tema, seguendo lo stesso percorso e modifichiamo il codice come segue:

[php]

<?php if($this->getCurrencyCount()>1): ?>
<div class="block block-currency">
<div class="block-title">
<strong><span><?php echo $this->__(‘Select Your Currency’) ?></span></strong>
</div>
<div class="block-content">
<select name="currency" title="<?php echo $this->__(‘Select Your Currency’) ?>" onchange="setLocation(this.value)">
<?php foreach ($this->getCurrencies() as $_code => $_name): ?>
<option value="<?php echo $this->getSwitchCurrencyUrl($_code) ?>"<?php if($_code==$this->getCurrentCurrencyCode()): ?> selected="selected"<?php endif; ?>>
<?php echo $_code ?>
</option>
<?php endforeach; ?>
</select>
</div>
</div>
<?php endif; ?>

[/php]

Ora, dobbiamo dire a Magento che vogliamo usare uno switcher personalizzato per il dropdown delle valute. Per farlo, dobbiamo creare il file local.xml in app/design/frontend/PACKAGE/THEME/layout/. 

Potresti già avere il file local.xml nella cartella layout del tuo tema. Questo file serve per inserire tutti gli overwrite dei layout in un tema.

Una volta aperto / creato il file local.xml, quello che dobbiamo fare è inserire sempre nella reference header il nuovo blocco, con i parametri che seguono:

type: directory/currency
name: currency_custom
template: currency/currency.phtml (il file che abbiamo creato pocanzi)

Tradotto in codice, avremo questo:

 

[xml]
<?xml <span class="re0">version</span>=<span class="st0">"1.0"</span><span class="re2">?>
</span><span class="sc3"><span class="re1">   <layout</span> <span class="re0">version</span>=<span class="st0">"0.1.0"</span><span class="re2">>
</span></span><span class="sc3"><span class="re1">      <default<span class="re2">>
</span></span></span><span class="sc3"><span class="re1">         <reference</span> <span class="re0">name</span>=<span class="st0">"header"</span><span class="re2">>
</span></span><strong><span class="sc3"><span class="re1">            <block</span> <span class="re0">type</span>=<span class="st0">"directory/currency"</span> <span class="re0">name</span>=<span class="st0">"currency_custom"</span> <span class="re0">template</span>=<span class="st0">"currency/currency.phtml"</span><span class="re2">/>
</span></span></strong><span class="sc3"><span class="re1">         </reference<span class="re2">>
</span></span></span><span class="sc3"><span class="re1">      </default<span class="re2">>
</span></span></span><span class="sc3"><span class="re1"></layout<span class="re2">>
</span></span></span>[/xml]

Come ultimo step, apriamo il file header.phtml in app/design/frontend/PACKAGE/THEME/ e in questo punto:

[php]<div class="header-language-background">
<div class="header-language-container">
<div class="store-language-container">
<?php echo $this->getChildHtml(‘store_language’) ?>
</div>

<?php echo $this->getChildHtml(‘currency_switcher’) ?>

<p class="welcome-msg"><?php echo $this->getChildHtml(‘welcome’) ?> <?php echo $this->getAdditionalHtml() ?></p>
</div>
</div>
[/php]

modifichiamo questo:

[php]<?php echo $this->getChildHtml(‘currency_switcher’) ?>[/php]

in questo modo:

[php]<?php echo $this->getChildHtml(‘currency_custom’) ?>[/php]

currency_custom è il nostro “name” usato nel file local.xml

Da questo momento in poi nel nostro dropdown, avremo solo il codice della valuta e potremo adattare al meglio gli spazi della nostra testata.

Spero che questo articolo ti sia stato d’aiuto, se hai qualche dubbio, lasciaci pure un commento.

Ti è piaciuto questo articolo? Votalo!

Torna in alto