Movable Type 5.0 情報(MT4のサイトURLとアーカイブURLに異なるドメインを設定している場合のアップグレード)
Movable Type 4.xで、アーカイブURL(アーカイブパス)にサイトURL(サイトパス)と異なるドメインを設定している状態で Movalbe Type 5 にアップグレードした場合の動作を確認しましたので紹介します。
なお、この情報は Movable Type 5.0ベータ2 の動作を元にしています。
1.前提
Movable Type 4 では、作成したブログにアーカイブパス・アーカイブURLを適用する場合、ウェブサイトと異なるパスとURLが設定可能です(下)。

少し見づらいので編集状態にしたものが下記です。

ただし、Movable Type 5 では、新しく作成したブログにアーカイブパス・アーカイブURLを適用する場合、ウェブサイトと同じパスとURLが継承されます。言い換えると、ブログのサイトパス・サイトURLと、アーカイブパス・アーカイブURLは、Movable Type 4 のように全く異なるものを設定できなくなります(下)。
ウェブサイトの設定画面

ウェブサイト配下のブログ設定画面

ということで、Movable Type 4.xで、アーカイブURL(アーカイブパス)にサイトURL(サイトパス)と異なるドメインを設定している状態で Movalbe Type 5 にアップグレードすると、アーカイブURLとアーカイブパスがどう変わるかを確認しました。
なお、MT5 のウェブサイトのウェブページはアーカイブテンプレートを使って生成しますが、ウェブサイト自体に「アーカイブ」という概念がないため、ウェブサイトの管理画面にアーカイブURL・アーカイブパスの設定項目はありません。
2.MT4からMT5へのアップグレード結果
MT4 から MT5 にアップグレードした場合、ブログのアーカイブURL・アーカイブパスは Movable Type 4 の設定値がそのまま引き継がれます。

Movable Type 5 で新規にブログを作成したときと異なり、サイトURL・サイトパス全体の編集も可能です。

3.ジェネリックウェブサイトのサイトURL・サイトパスについて
アップグレード時に生成される、ジェネリックウェブサイト(空のウェブサイト)のサイトURL・サイトパスは空白になっています。

ちなみにこのジェネリックウェブサイトの管理画面には、次のようなメッセージが表示されます。

このジェネリックウェブサイトのサイトURL・サイトパスを誤って設定してしまうと(下)、

空白の状態で保存できないため(下)、元の空の状態に戻せなくなります。


4.ジェネリックウェブサイトのサイトURL・サイトパスを消去する方法
誤って設定してしまった場合、ブログのサイトURL・サイトパスが、次のようにウェブサイトパスやウェブサイトURLが前半に連結した値になってしまいます(下:ブログの設定画面)。

こうなってしまうと、ブログのサイトURL・サイトパスの元の設定を削除するしかありません(下:ブログの設定画面)。
ただ、ウェブサイトに設定したパスやURLがブログのパスやURLと異なり、しかもブログの値に直したい場合もあると思います。そのような場合、データベースを直接書き換える方法があります。
phpMyAdmin を利用できるのであれば、左のメニューから mt_blog をクリックして、次の画面の上部のタブの「表示」をクリックし、表示されたテーブル(下)からジェネリックウェブサイトのblog_id(下の画面では2)をチェックして、編集をクリックします。

次の画面で「blog_site_path」と「blog_site_url」の右側にある設定された内容を消去して、「実行する」をクリックすれば完了です。
Movable Type のウェブサイトに関するテンプレートタグ
Movable Type 5.0 で新しく「ウェブサイト」という概念が導入されました。そのことでウェブサイトに関連するテンプレートタグがいくつか追加されました。
ここではウェブサイト関連のテンプレートタグをいくつか紹介しておきます。基本的にはブログ系テンプレートタグ(MTBlogXX)と大きく変わらないので、ファンクションタグの説明は省略します。
MTWebsites
ウェブサイトの一覧を取得するブロックタグです。このテンプレートタグを使えば、ウェブサイトから他のウェブサイト、あるいはブログが属さない他のウェブサイトの情報にアクセスすることも可能です。
<mt:Websites>
<mt:WebsiteURL />
</mt:Websites>
site_ids モディファイアを指定することで、特定のウェブサイトを指定することもできます。
<mt:Websites site_ids="1,12,19">
MTBlogParentWebsite
ブログが属するウェブサイトのコンテキストに移動するブロックタグです。このタグを利用すれば、MTWebsites タグを使わずに、自分の所属するウェブサイトの情報を取得することができます。ベータ2で追加されました。
<mt:BlogParentWebsite>
<mt:WebsiteURL />
</mt:BlogParentWebsite>
MTWebsiteHasBlog
ウェブサイトがブログを有することを判定するブロックタグです。ウェブサイトコンテキストで使用します。なお、下の例ではウェブサイトに属するブログを指定していません(MTBlogs タグにそういった指定が可能なモディファイアはないようです)。
<mt:WebsiteHasBlog>
<mt:Blogs>
<mt:BlogURL />
</mt:Blogs>
</mt:WebsiteHasBlog>
MTIfWebsite
現在のコンテキストがウェブサイトコンテキストであることを判定するブロックタグです。MTElse を併用すればブログコンテキストも判定できるようです。
<mt:IfWebsite>
<h1>Search results for <$mt:WebsiteLabel$>:</h1>
<mt:Else>
<h1>Search results from all blogs:</h1>
</mt:IfWebsite>
注意事項
ウェブサイト関連のテンプレートタグの利用で気がついた点を記しておきます(ベータ2時点の情報)。
- ウェブサイトIDは、ブログIDの派生であるため、値は「ウェブサイト+ブログ」で一意
- ウェブサイトで、ブログのコンテキストに移動せずにブログ関連のテンプレートタグを使用すると、自ウェブサイトの情報を表示
- ブログでウェブサイト関連のテンプレートタグを使用する場合、ウェブサイトのコンテキストになっている必要あり(違反した場合は再構築エラー)
- ブログからウェブサイトのテンプレートをインクルードする際、インクルード先でウェブサイトのテンプレートタグが使われている場合は、ウェブサイトのコンテキストにする必要あり(下)
<mt:BlogParentWebsite>
<mt:include module="foo" blog_id="1" />
</mt:BlogParentWebsite>