top

MT4でオリジナルテンプレートを使う

MT4のデフォルトテンプレートはスタイルシート内での変更ならともかく、HTML部分をデフォルトの枠から大きく離れたレイアウトにしたり、ブログではないサイトを構築するにはちょっとカスタマイズが難しいです。細かく分かれたモジュールもデフォ構造に最適化した組まれ方がされていると思うので、全然違うものを作りたい場合は無理にデフォルトをカスタマイズするより一から自分でオリジナルを作る方が簡単かもです。

オリジナルテンプレートのメリット
・自分の好きなように自由に出来る。
・テンプレのダイエットも存分に出来るので再構築もいくらでも軽くできる。
・既存サイトとデザインを合わせることが出来るのでブログだけ浮いたりしない。
・ブログではないサイトも自由に作れる。
・他に同じテンプレがなく「この世に1つ」のオリジナル気分を味わえる。

オリジナルテンプレートのデメリット
・StyleCatcherとTemplate Backup and Refreshが使えなくなる

…とはいえ、オリジナルを作りたいという時点でStyleCatcherやTemplate Backup and Refreshは既に念頭にないはずですから、結局デメリットと言えるようなデメリットはない、という気がします(^^;。

オリジナルテンプレートの作り方
実はそんなに難しくありません。MTタグの使い方を間違えてたとか、そのバージョンに対応してないプラグインを使ってたとかでもない限り、どんなテンプレートでも問題なく動かせます(それがMTです)。Expression WebでもホームページビルダーでもDreamweaverでもメモ帳でも自分の使いやすいソフトで雛型を作って本文などを<$MTEntryBody$>などのMTタグに置き換えていくだけです。MTタグは以下を参照して必要なものを好きなように組んでみましょう。

Movable Type テンプレートタグリファレンス

テンプレートの構成は?
デフォルトのテンプレート構成は「MT4の使い方の見本の一つ」だと思えばいいです。 デフォルトがブログ記事リストでカテゴリ・日付を一緒にしたからといって、そうしなきゃいけないということはありません。カテゴリ・月別・日別・年別に1つ1つ分けた方が使いやすいと思うならそうすればいいのです。<MTSetVar name="name" value="bar">も必要なら使えばいいし、必要ないなら使わなくていいのです。そこは作り手の自由ですから。具体例としてWingMemoとNote のテンプレ構成をデフォルトと比較して書いてみます。ブログ毎に全然違うのが分かると思います。

インデックス

デフォルト WingMemo Note
Atom
JavaScript
RSD
RSS
アーカイブインデックス
スタイルシート(ベース)
スタイルシート(メイン)
メインページ
Atom
JavaScript
RSD
RSS2.0
アバウト頁
アーカイブインデックス
サイドバー
スタイルシート
スタイルシート(頁分割サンプル用)
ダイナミックサンプル頁
ダイナミックサンプル頁(2)時刻
ダイナミックサンプル頁(3)分割
ダイナミックサンプル頁(4)分割2
トラックバックURL取得用スクリプト
ブックマーク
メインページ
JavaScript
アーカイブインデックス
スタイルシート
ダイナミック用メインページ
メインページ

インデックスは私の一番好きなテンプレートです。ここではどんなファイルも自由に作ることが出来ます。HTMLだけでなく、XML、CSS、JavaScript等々、作れないものはないんじゃないかと思えるほどです。フォルダも自由に設定できます。しかもテンプレ毎に静的・動的を選べるので、目的に応じて自在に使い分けることが出来ます。インデックスを使いこなせばフレームサイトだって作れます。インデックステンプレートを制するものはMTを制す!と言いたくなるほどの自由多機能ぶりです。

アーカイブ

デフォルト WingMemo Note
ウェブページ
ブログ記事
ブログ記事リスト
カテゴリー・アーカイブ
カレンダー
ブログ記事
日別アーカイブ
見本用月別アーカイブ
カテゴリーアーカイブ
ブログ記事
月別アーカイブ

アーカイブもいくらでも自由に増やせます。アーカイブマッピングを駆使すれば同じアーカイブを違うデザインや構成で何通りにも使い分けることができます。ダイナミックの場合、条件分枝は使い過ぎると表示が重くなるのでほどほどに。

☆ウェブページについて
4.0で新規追加されたアーカイブで、アバウト頁やリンク頁など記事一覧に出現してほしくない独立した頁を作るためのテンプレートだそうです。ここではまだ導入していませんが(インデックスで足りているので)、アイデア次第でいろいろな使い方が出来そうです。

ウェブページ用のテンプレートタグ

↑これを見る限りでは<前の頁><次の頁>などのリンクも張れるようなので、例えば日記はブログ記事で書いて、作品展示頁は専用のデザインを組んでウェブページで作る、なんてことも出来るのかな?と思います。

モジュール

デフォルト WingMemo Note
ウェブページの詳細
カテゴリ
コメント
コメント入力フォーム
コメント詳細
サイドバー(2カラム)
サイドバー(3カラム)
タグ
トラックバック
フッター
ブログ記事のメタデータ
ブログ記事の概要
ブログ記事の詳細
ヘッダー
banner
custom-all
footer
menu
stylecatcher
banner
copyright
side

モジュール化はしていますがデフォルトほど細かくはないです。自分で作ったものならどこに何があるかよく分かっているので編集もしやすいです。コメントフォームなどシステムと連動する部分はこちらを参考にデフォモジュールをそのまま入れてしまえばいいです。

システム
システムテンプレートは他のテンプレと違って勝手に増やしたり削除したりは出来ませんが、デザインの変更は自由にできます。ダイナミックエラー頁などは存分にカスタマイズしてダイナミックならではの素敵なエラー頁を楽しんでみましょう^^。
なお、オリジナルで作る場合、「コメント完了」と「検索結果」にはシステム上必要な条件分枝があるのでそこだけは変えないように注意して。

テンプレートの構成はこのようにいくらでも自由に変更・追加・削除できます。必要なテンプレは増やし、不要なテンプレは削除して無駄な再構築は防ぐ。テンプレート構成も自分に合った最適化を。オリジナルにこそMTならではの醍醐味があるのではないかと思っています。

 

コメント

初めまして。最近MT4を始めて、こちらを参考にさせていただいてます。
ところで☆ウェブページについての項目で
><前の頁><次の頁>などのリンクも張れるようなので
とありますが、MT4だと<前の頁><次の頁>などは、ウェブページでしか作成できないのでしょうか?
というのもウェブページを作成していないのですが、<前の頁>などはページにつけておきたいのですが、方法が分からなくて…

もし宜しければご回答下さると嬉しいです。

nurさん、初めまして。

ページというのはブログ記事のことでしょうか?
でしたらデフォルトで付いてますよ。サイドバーにある「ひとつ前のブログ記事はxxxxです」「次のブログ記事はxxxxです」の部分がそうです。デフォルトテンプレートならモジュールの「サイドバー(2カラム)」「サイドバー(3カラム)」の中に入ってます。<MTIf name="entry_template">の下のある<MTEntryPrevious>と<MTEntryNext>が<前の頁><次の頁>のMTタグです。

このブログでしたら記事本文と横一列カレンダーの間にある「← →」が<前へ><次へ>のリンクになってます。クリックしてみて下さい。前後の記事に行けます。

オリジナルテンプレートを作られるのなら、MTタグ本は1冊は手元に置かれておくことをおすすめします。
http://wing.w-museum.com/200604162232.html
↑で紹介している本は3.2用ですが、3.3以降追加された新タグが載ってないだけで、4.0でもちゃんと使えます。むしろ基本的なタグを重点的に知るにはちょうどいいと思います。MTタグの使い方がある程度分かったら、新しいタグを見てもなんとなく意味と使い方が分かるようになると思います。

ご丁寧な返信ありがとうございました!
ウェブページは上記に書かれてた「4.0で新規追加されたアーカイブ」と思ったんですが、特に関係ないのですね。失礼しました。

確かにこの記事に入ってる「← →」と同じようなリンクを張りたかったのです!
このタグの張り方、張る場所など説明されているページはありますでしょうか?
(どの単語でページ内を探せばよいのか分からずに…
もし内容違いでしたら申し訳ありません…

すみません、私の説明が下手だったみたいで…(^^;。

>ウェブページ
「4.0で新規追加されたアーカイブ」です。その認識で合ってます。
このブログを例にするなら、「ABOUT」や「BOOKMARK」のような記事一覧には出てこない独立した頁を作るためのアーカイブです。
でも「このサイトについて」「リンク集」のような頁に<前へ><次へ>のリンクって普通要りませんよね。だから<前へ><次へ>用のタグも用意されているのを見て「あれ? 工夫や発想次第でもっといろいろな使い方が出来るのかな?」と思った次第です。

>ブログ記事
この頁のことです。4.0デフォルトなら上で説明した通り、サイドバーに<前へ><次へ>リンクは最初から入ってます。

>「← →」と同じようなリンクを張りたい
上で説明した通り、4.0デフォルトでお使いなら、<前へ><次へ>リンクは最初からブログ記事に入ってますのでnurさんがご自分でわざわざ追加する必要はないと思うのですが…。
それとも「<前へ><次へ>リンクがサイドバーに入っているのが気に入らない、違う場所へ移動させたい」ということでしょうか?
あるいはオリジナルテンプレを作成中だけど、<前へ><次へ>のMTタグの書き方が分からないということでしょうか? タグだけでしたら以下のような感じですが…。

<MTEntryPrevious>
<a href="<$MTEntryPermalink$>">&laquo; <$MTEntryTitle$></a>
</MTEntryPrevious>
|
<MTEntryNext>
<a href="<$MTEntryPermalink$>"><$MTEntryTitle$> &raquo;</a>
</MTEntryNext>

デフォルトで入ってるタグなのでエントリーを設けて説明までしてなかったですね(^^;。
モジュールの「サイドバー(2カラム)」「サイドバー(3カラム)」の中を探してみて下さいね。そこに<MTEntryPrevious>と<MTEntryNext>があるはずですので、見れば使い方が分かると思います

丁寧なご回答有難うございます。
おかげでウェブページ、記事の概要が把握できました。
また、<MTEntryNext>のタグもありましたので、こちらでいじっていこうと思います。

本当はメインページに設定しようと考えてたのですが、どこにつけたらいいかも分からない上、
10件ごとの記事のリンクにしたかったのですが、それだとPHP化も必要なようなので、
もう少し勉強していこうと考えてます(^^;

長々としたコメントして大変申し訳ありませんでした…

こんばんは。
やっと何をされたいのが分かりました(^^;。
「ブログ記事の前後リンク」ではなくて「トップ頁の分割」だったのですね。

頁分割ならダイナミック・パブリッシングにされたら簡単に出来ます。メインページの10件ごとの分割表示ももちろんできますよ。
お使いのデータベースがダイナミックに対応していれば、設定>ブログの設定>公開で「公開に関するオプション」というのが出ていると思います。そこで「テンプレートごとに構築方法を設定する」を選んで保存した後、メインページのテンプレートをダイナミックにして下さい。
タグの書き方については以下の頁が参考になると思います。
http://wing.w-museum.com/200602091310.html
http://wing.w-museum.com/200602101206.html

それではよろしくです。

<追記です>
MT4デフォルトテンプレートでダイナミック頁分割する方法をエントリーしました。ダイナミックで分割される場合は参考にして下さい。
http://wing.w-museum.com/200709131336.html

こちらの説明下手で申し訳ありませんでした;
トップページの分割方法、新しい記事で確認しました。
とても分かりやすくて無事に分割が行えました、ありがとうございました!

本当に長々と質問したのに、丁寧に対応してくださってありがとうございました。

トップ頁の分割、無事に行えたようでよかったです。^^
ダイナミックtips中心サイトですけど、4.0用カスタマイズも少しずつ増やしていこうと思ってます。
これからもよろしくお願い致します。