DotNetNuke でスキンを国際化

投稿者: Tomotoshi Sugishita 2008年10月24日 5:15

DotNetNuke 4.9.0 より追加になった新しいスキンオブジェクトを使用することで、スキンの国際化に対応できるようになったので、ご紹介。

Text スキンオブジェクトがそれにあたり、HTML で記述する際は、[TEXT]というトークンを使用します。
マニフェストとなる skin.xml には以下のような形で、[TEXT] トークンに対するマニフェストを指定してください。


<Object>

  <Token>[TEXT]</Token>

  <Settings>

    <Setting>

      <Name>CssClass</Name>

      <Value>任意のクラス名</Value>

    </Setting>

    <Setting>

      <Name>Text</Name>

      <Value>表示する文字列</Value>

    </Setting>

    <Setting>

      <Name>ResourceKey</Name>

      <Value>リソースファイル内のエントリー名</Value>

    </Setting>

  </Settings>

<Object>

上記を指定した上で、実際のローカライズに使用する、リソースファイルをスキンのインストールフォルダ配下のにApp_LocalResourcesフォルダに作成します。
作成については、Visual Studio を使用するのが一番手っとり早いと思います。
エントリー名については、上記マニフェストで指定したResourceKeyの値に、.Textを付加した名前で保存します。
リソースファイル名については、スキンファイルと同名のファイルに設定してください。
スキンファイル名が、index.html(index.ascx)になる場合は、index.ascx.resx になります。
日本語のリソースを作成する場合は、ロケール名をファイル名に追加します。上記の場合なら、index.ascx.ja-JP.resx。

残念ながら、現行バージョンのDNNの言語エディタでは、スキンのリソースの編集はできないため、Visual Studio やエディタで編集します。
同様にアップロードの方法も提供されていませんので、スキンといっしょにアップロードする必要があります。

詳しいところは、次回の大阪、東京の DNNJP Offsite Meeting で説明したいと思いますので、興味のある方はご参加ください。

タグ: ,

DotNetNuke

コメントを書く




biuquote
  • コメント
  • プレビュー
Loading



杉下 朋年

Tomotoshi Sugishita
Tomotoshi Sugishita
< D&UNITE 株式会社 >

Microsoft MVP
Microsoft MVP for Development Platforms
- ASP.NET/IIS Jul.2009 - Jun.2012
Microsoft MVP for Development Tools
- Visual Basic Jul. 2004 - Jun. 2009

 

カレンダー

<<  2月 2012  >>
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910

投稿一覧をカレンダーで表示