Home Contact

Magento Code: Include currency switcher in the header or footer with Foundation mark-up

<Keithblog />

It is easy to set-up multi-currencies in Magento. This code  allows you to quickly include a currency drop down or link to  the header or footer of your Magento store. Before you begin make sure you have enabled more than one currency  as this example won’t work without at least one additional currency alongside your base currency.

Set-up the following code in your theme directory /app/design/frontend/package/theme/template/currency/currency.phtml. I’ve included code for both a drop down select box, or inline list of hyperlinks.

Display as a select drop-down

<?php if($this->getCurrencyCount() > 1): ?>
<div class="currency input-group">
   <label class="input-group-label" for="custom-currency-selector"><?php echo $this->__('Your Currency:') ?></label>
   <select class="input-group-field" onchange="window.location.href=this.value" name="custom-currency-selector" id="custom-currency-selector">
   <?php foreach ($this->getCurrencies() as $iso => $name): ?>
      <option value="<?php echo $this->getSwitchCurrencyUrl($iso)?>" <?php if($iso == $this->getCurrentCurrencyCode()): ?>selected <?php endif; ?>>
         <?php echo $iso ?> - <?php echo $name ?>
   <?php endforeach; ?>
<?php endif; ?>

Display as an inline list of hyperlinks

<?php if($this->getCurrencyCount() > 1): $count = 0; ?>
<ul class="inline-list">
   <?php foreach ($this->getCurrencies() as $iso => $name): ?>
         <?php if($iso == $this->getCurrentCurrencyCode()): ?>
            <strong><?php echo $iso ?></strong>
         <?php else: ?>
            <a href="<?php echo $this->getSwitchCurrencyUrl($iso)?>" ><?php echo $iso ?></a>
         <?php endif; ?>
      <?php $count++; if ( $this->getCurrencyCount() > $count ) { echo " <li>/</li>"; } ?>
   <?php endforeach; ?>
<?php endif; ?>

Then include the following in your /app/design/layout/local.xml. The reference tag can be changed from header to footer depending on where you want to include the currency switcher on the page.

<?xml version="1.0"?>
<layout version="0.1.0">
      <reference name="header">
         <block type="directory/currency" name="custom_currency_selector" template="currency/currency.phtml"/>

The final step is to include the block in either header.phtml or footer.phtml as outlined above.

<?php echo $this->getChildHtml('custom_currency_selector') ?>

Related posts on keithgreer.uk

Checkout problems upgrading to Magento

Upgrading Magento 1 through the Magento Connect Downloader

Upgrading Magento 1 through command line

Magento Server Transfer – Tried and Tested Method

Ordering assets in Magento 2

Magento Code: Innoexts Currency Pricing Module Price and Special Price Import via SSH

PHP: glob

Magento Code: Check an import directory for new product CSVs and process using a Magmi profile

Magento: What are Sage Pay Orphan Transactions?