参考URL
http://wiki.shopify.com/How_to_Show_Multiple_Currencies
※通貨は表示の変更のみ。支払いは設定の通貨で行われる。
- 右上の「Preferences」 → 「General Settings」を選択
- 下の方の「」右にある「(formatting)」をクリック
- ${{amount}} USD と ${{amount}} を
<span class='money'></span>
で囲む
- https://gist.github.com/773590 のソースをコピー
- 右上「Theme」 → 「Template Editor」を選択
- 左下の方のConfigから「settings.html」を選択
- 最後の行に先ほどコピーしたソースをペースト
- 右上「Theme」 → 「Template Settings」を選択
- Money options の項目が増えているので、「Currencies you wish to support」に追加したい通貨を追加する
通貨は3文字のコードを入力 参考 http://ja.wikipedia.org/wiki/ISO_4217
- https://github.com/carolineschnapp/currencies から「jquery.currencies.min.js」をダウンロード
- 右上「Theme」 → 「Template Editor」を選択
- 左1番下「add a new asset」クリック
- アップロードボタンが出てくるので、先ほどダウンロードした「jquery.currencies.min.js」をアップロード
- 同画面「Template Editor」左のSnippetsの項目下の「add a new snippet」をクリック
- フォームが出てくるので「currencies」を入力して「Create snippet」ボタンを押す
- https://gist.github.com/773624 のソースをコピー ※下記に追記あり
- 先ほどのSnippet にペーストして保存
- 同画面「Template Editor」左1番上の「theme.liquid」を選択
- </body> の上に以下をコピペ
{% include 'currencies' %}
- 同画面「Template Editor」左のSnippetsの項目下の「add a new snippet」をクリック
- フォームが出てくるので「currencies-switcher」を入力して「Create snippet」ボタンを押す
- https://gist.github.com/773649 のソースをコピー
- 先ほどのSnippet にペーストして保存
- 同画面「Template Editor」左1番上の「theme.liquid」を選択
- 表示したい位置に以下を挿入
{% include 'currencies-switcher' %}
以上
2013/05/09 追記
別サイトで必要があったので試したが
「16」のソースでは動かなかった。
以前に使用していたものを使用して解決
{% if settings.show_multiple_currencies %} {{ "/services/javascripts/currencies.js" | script_tag }} {{ "jquery.currencies.min.js" | asset_url | script_tag }} <script> {% if settings.currency_format %} Currency.format = '{{ settings.currency_format }}'; {% endif %} var shopCurrency = '{{ shop.currency }}'; var cookieCurrency = Currency.cookie.read(); /* Fix for customer account pages */ jQuery('span.money span.money').each(function() { jQuery(this).parents('span.money').removeClass('money'); }); jQuery('span.money').each(function() { jQuery(this).attr('data-currency-{{ shop.currency }}', jQuery(this).html()); }); // If there's no cookie. if (cookieCurrency == null) { Currency.currentCurrency = shopCurrency; } // If the cookie value does not correspond to any value in the currency dropdown. else if (jQuery('[name=currencies]').size() && jQuery('[name=currencies] option[value=' + cookieCurrency + ']').size() === 0) { Currency.currentCurrency = shopCurrency; Currency.cookie.write(shopCurrency); } else if (cookieCurrency === shopCurrency) { Currency.currentCurrency = shopCurrency; } else { Currency.convertAll(shopCurrency, cookieCurrency); } jQuery('[name=currencies]').val(Currency.currentCurrency).change(function() { var newCurrency = jQuery(this).val(); Currency.convertAll(Currency.currentCurrency, newCurrency); jQuery('.selected-currency').text(Currency.currentCurrency); }); var original_selectCallback = window.selectCallback; var selectCallback = function(variant, selector) { original_selectCallback(variant, selector); Currency.convertAll(shopCurrency, jQuery('[name=currencies]').val()); jQuery('.selected-currency').text(Currency.currentCurrency); }; jQuery('.selected-currency').text(Currency.currentCurrency); </script> {% endif %}