2011-09-02 11 views
1

私はMagento verで価格フォーマットを変更しようとしています。 1.5.1.0から €8.49 からEUR 8.49Magento 1.5.1.0で通貨記号を変更するにはどうすればよいですか?

私はたくさんの投稿とフォーラムで探していますが、うまくいきませんでした。 私は指示に従おうとしましたが、これまでにはうまくいきませんでした。 キャッシュは無効です。

/lib/Zend/Locale/Data/en.xml 
<currency type="EUR"> 
<displayName>Euro</displayName> 
<displayName count="one">euro</displayName> 
<displayName count="other">euros</displayName> 
//added <symbol>EUR</symbol> here 
</currency> 

/lib/Zend/Locale/Data/root.xml 
<currency type="EUR"> 
    <symbol>€</symbol> => changed to <symbol>EUR</symbol> didn't work 
</currency> 

いいえ、コア/ Zendファイルを変更したり、str_replaceを使用したりしません。

ありがとうございました!

答えて

0

あなたのバージョンrootでgrepしようとすると、それがロケールベースなので、複数のファイルでtを変更する必要があるかもしれません。

grep 'type="EUR"' . -rsn 

は、あなたが自由に拡張Currency Manager

  • を使用するかは、あなた自身のを書くことができます

    rm -rf var/cache/* 
    
  • +0

    ありがとうございました!/var/cacheを削除するとそれが作成されました。非アクティブ化されたキャッシュが十分でないことを知りませんでした... –

    0
    1. フロントエンドの変化を観察する前に、その後のキャッシュをクリアすることを忘れないでください単純なモジュールであり、Mage_Directory_Model_Currencyモデルのfunction format()をオーバーライドします。

      public function formatTxt($price, $options=array()) 
      { 
          $options['display'] = Zend_Currency::USE_SHORTNAME; 
          return parent::formatTxt($price, $options); 
      } 
      

    P.S. Magentoのアップグレード後に/lib/Zend/Locale/Data/*.xmlファイルの変更を緩和することができます。

    +0

    変更されたファイルをapp/code/local/Zend/Locale/Dataに移動することはできますが、はい、あなたはローカルの変更を追跡する必要があります –

    +1

    @AntonSはこの方法は機能しません。 Zend_Locale_Data :: _ findRouteメソッドを見てみましょう:$ filename = dirname(__ FILE__)のようにlocateファイルを探しています。 '/データ/'。 $ロケール。 '.xml';つまり、そのファイルは常にlib/Zend/Locale/Dataディレクトリからロードされます。 – Snowcore

    +0

    @Snowcoreこれも試しましたか? Magentoでは、Zendファイルを上書きすることができます。だから、パスを上書きするか、すでに完了しているかどうかを確認することができます。 –

    関連する問題