TopMovable Typeカスタマイズその他 > 2011年1月
2011年1月27日

Movable Typeの日付タグフォーマットの西暦を元号で表示する

January 27,2011 12:03 AM
Tag:[, , ]
Permalink

Movable Typeの日付タグフォーマットの西暦を元号(昭和・平成)で表示するカスタマイズです。

変換前
変換前

変換後
変換後

以下、カスタマイズ方法です。

1.西暦を平成に変換する

例えば、ブログ記事の日付の西暦を元号で表示する場合は、次のサブテンプレートを利用してください。

<mt:Entries>
<mt:EntryDate format="%Y" setvar="year" />
平成<mt:GetVar name="year" op="-" value="1988" />年
</mt:Entries>

2.西暦を昭和および平成に変換する

冒頭の画像のように、昭和および平成に対応するには、1989年を境に3種類の判定文で分岐させます。さらに1989年は次のように判定します。

  • 1月7日まで:昭和64年
  • 1月8日以降:平成元年

サブテンプレートは次のようになります。

<mt:Entries>
<mt:EntryDate format="%Y" setvar="year" />
<mt:EntryDate format="%m" setvar="month" />
<mt:EntryDate format="%d" setvar="date" />
<mt:if name="year" eq="1989">
  <mt:if name="month" eq="1">
    <mt:if name="date" lt="8">
昭和64年
    <mt:else>
平成元年
    </mt:if>
  <mt:else>
平成元年
  </mt:if>
</mt:if>
<mt:if name="year" lt="1989">
昭和<mt:GetVar name="year" op="-" value="1925" />年
</mt:if>
<mt:if name="year" gt="1989">
平成<mt:GetVar name="year" op="-" value="1988" />年
</mt:if>
</mt:Entries>

月日を加えたい場合は、サブテンプレートの最後の部分を

…前略…
<mt:EntryDate format="%m月%d日" />
</mt:Entries>

としてください。また、このまま使うと年と月の間に空白が生じるので、すべての改行を除去するとよいでしょう。

3.その他

お遊び的なものとしては、次のようにregex_replaceモディファイアを複数並べて変換することも可能です。

<mt:Entries>
平成<mt:EntryDate
regex_replace="/1989/","01"
regex_replace="/1990/","02"
regex_replace="/1991/","03"
regex_replace="/1992/","04"
regex_replace="/1993/","05"
regex_replace="/1994/","06"
regex_replace="/1995/","07"
regex_replace="/1996/","08"
regex_replace="/1997/","09"
regex_replace="/1998/","10"
regex_replace="/1999/","11"
regex_replace="/2000/","12"
regex_replace="/2001/","13"
regex_replace="/2002/","14"
regex_replace="/2003/","15"
regex_replace="/2004/","16"
regex_replace="/2005/","17"
regex_replace="/2006/","18"
regex_replace="/2007/","19"
regex_replace="/2008/","20"
regex_replace="/2009/","21"
regex_replace="/2010/","22"
regex_replace="/2011/","23"
/>
</mt:Entries>
Comments [0] | Trackbacks [0]
2011年1月12日

WordPressやMovable Typeで作ったサイトを日本語ドメインで運用する

January 12,2011 2:55 AM
Tag:[, ]
Permalink

WordPressやMovable TypeなどのCMSで制作したウェブサイトを、日本語ドメインで運用するTipsです。MTQ日本語ドメインに関する質問があったのでまとめてみました。

1.日本語ドメインとは

いまさらですが、日本語ドメインとは「http://日本語.jp/」など、ドメイン部分に日本語を使ったものを指します。日本語.jpのリンク先に日本語ドメインのサイトが色々掲載されています。

2.Punycodeとは

日本語ドメインにはPunycodeが深く関わっています。以下、WikiPediaからの引用です。

Punycode

Punycode(ピュニコード)とは、国際化ドメイン名で使われる文字符号化方式で、RFC 3492で定義されている。Unicodeで書かれた文字列をDNS内の制限された文字コード空間でも使えるようにするための方式で、ユーザーエージェントの実装に依存する。

以下はRFC3492の抜粋で、「3年B組金八先生」をUnicodeに変換し、さらにPunycodeに変換した例です。

3年B組金八先生
u+0033 u+5E74 U+0042 u+7D44 u+91D1 u+516B u+5148 u+751F
Punycode: 3B-ww4c5e180e575a65lsy2b

変換ロジックは、最初に文字列の中からASCII文字だけを抜き出し先頭に並べます。ASCII文字以外の文字がある場合は、ASCII文字の直後にハイフンを付与します。その後の変換ロジックについては「一般化可変長整数」などを使用しますが、説明が面倒なので割愛します。詳しくはWikipediaや次のサイトを参照してください。

Punycode (プニーコード) 【日本語ドメイン取得.com】

Punycodeをドメインとして利用する場合、先頭に識別子として「xn--」を付与し、その後に先程の符号化された文字が続く形式になります。よって日本語ドメイン「3年B組金八先生.jp」のPunycodeによる表現は、

http://xn--3B-ww4c5e180e575a65lsy2b.jp/

となります。

3.Movable Typeに日本語ドメインを設定する

Movable Typeで日本語ドメインを利用する場合、「設定」→「全般」メニューの「サイトURL」に、Punycodeで日本語ドメインを設定します。サイトパスは何でも構いません。

設定画面

日本語を設定すると、次のように「有効なサイトURLを指定してください。」という警告が出ます。

設定画面

あとは日本語ドメインを取得するだけです。ここではさくらインターネットが取得した独自ドメインを利用し、

http://ムーバブルタイプ.jeez.jp/

というサブドメインを取得した例で示しています。さくらインターネットでサブドメインを取得する場合、入力文字は半角英数字(a~z、0~9)およびハイフン(-)のみという制約があるので、サブドメイン名はPunycodeで設定します。

下の画像は「http://ムーバブルタイプ.jeez.jp/」でアクセスしたMTのトップページです。アドレスバーの部分が日本語で表示されているのが分かります。

日本語ドメインでアクセス

4.WordPressに日本語ドメインを設定する

WordPressでは「サイトのアドレス (URL)」に設定します。WordPressでは日本語の設定が許容されていますが、いくつか調べたところではPunycodeを設定するようです(動作確認できていないので違っていたらご指摘ください)動作確認できました。

WordPress

下の画像は「http://ワードプレス.jeez.jp/」でアクセスしたWordPressのトップページです。アドレスバーの部分が日本語で表示されているのが分かります。

日本語ドメインでアクセス

WordPressでは、日本語ドメインを利用すると、JavaScriptからアドレスバーに表示された日本語を取得するとエラーになる事象があるようです。

日本語ドメインでの運用トラブル

この場合、(クライアントの使用するブラウザに依存しますが)アドレスバーに日本語ドメインを表示させないことで対処可能です。

ブラウザのアドレスバーに日本語ドメイン(Punycode)を表示させない

5.ブラウザのアドレスバーにPunycodeでURLが表示される事象について

ブラウザのアドレスバーに日本語のまま表示されず、Punycodeで表示される事象についてはブラウザ依存の動作です。Firefoxではトップドメインが「jp」であれば、日本語ドメインのまま表示されますが、「com」などではPunycodeに変換されます。下の画像は、

http://ムーバブルタイプ.sakuraweb.com/

というさくらインターネット独自ドメインのサブドメインで表示させたものです。アドレスバーのURLがPunycodeで表示されています。

日本語ドメインでアクセス

Google Chromeでは、PunycodeのURLを設定しても日本語で表示されるようです。

Comments [0] | Trackbacks [0]
Now loading...
ギターに入った猫
掲載広告募集
Styles
Font Size
Default
For defective color vision
Gray Scale
RGB Color
Search this site

このブログをメールで購読する by:FeedBurner

AMN
Categories
Monthly Archives
2019年
2018年
2017年
2016年
2015年
2014年
2013年
2012年
2011年
2010年
2009年
2008年
2007年
2006年
2005年
2004年
2003年
BlogPeople
Syndicate this site
FeedBurner(RSS1.0/RSS2.0/Atom)
Counter
これまでのアクセス
Powered by
Movable Type 6.0.3