<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
		xmlns:xhtml="http://www.w3.org/1999/xhtml"
>

<channel>
	<title>PAOLOG &#187; テンプレート</title>
	<atom:link href="http://scianto.net/archives/tag/%e3%83%86%e3%83%b3%e3%83%97%e3%83%ac%e3%83%bc%e3%83%88/feed" rel="self" type="application/rss+xml" />
	<link>http://scianto.net</link>
	<description>趣味のウェブデザインと管理人PAONの日記</description>
	<lastBuildDate>Thu, 29 Jul 2010 03:47:50 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://scianto.net/archives/tag/%e3%83%86%e3%83%b3%e3%83%97%e3%83%ac%e3%83%bc%e3%83%88/feed" />
		<item>
		<title>MT4の新しいテンプレート構造に触れる</title>
		<link>http://scianto.net/archives/2007/09/18223150.php</link>
		<comments>http://scianto.net/archives/2007/09/18223150.php#comments</comments>
		<pubDate>Tue, 18 Sep 2007 13:31:50 +0000</pubDate>
		<dc:creator>paon</dc:creator>
				<category><![CDATA[web design]]></category>
		<category><![CDATA[MT4]]></category>
		<category><![CDATA[テンプレート]]></category>

		<guid isPermaLink="false">http://scianto.net/wpmemo/?p=230</guid>
		<description><![CDATA[
前回の更新からしばらく（というよりかなり）たってしまいましたが少しやる気が出てきたので更新再開します。
MovableType4をレンタルサーバー（チカッパ!）にインストールしてはみたもののこれまでのMT3との違いの大 [...]]]></description>
			<content:encoded><![CDATA[<p class="imgBox"><img src="http://power.scianto.net/img/entryimage/20070918_1.png" width="400" height="200" alt="" /></p>
<p>前回の更新からしばらく（というよりかなり）たってしまいましたが少しやる気が出てきたので更新再開します。</p>
<p>MovableType4をレンタルサーバー（チカッパ!）にインストールしてはみたもののこれまでのMT3との違いの大きさに（これまた）かなりやられ→そのまま放置していたというのが正直なところです。</p>
<p>しかし、「これではイカーン！」ということで鬼門のテンプレートから徐々に覗いていこうと思います。（フー）</p>

<span id="more-230"></span>
<h3>軽量化されたメインページのテンプレート</h3>
<p>まず、驚いたのがメインページになるテンプレートの中身。MT3のときにはヘッダーからフッターまでしっかりと記述されていたのが、MT4ではそれらをモジュールとしてMTIncludeタグで読み込んでいます。さらには先頭には見慣れないMTSetVarというタグが・・・。そういえばMT3のマニュアルにも載っていたなと思い出しはしたものの使い方がわからなかったのでまったく使った記憶がありません。使わなくても不便を感じませんでしたしね。</p>
<p>しかし、MT4では使わない手はないというくらい重要な役を担っているタグのようですし、これをある程度使えるようになれば、かなり自由なWebサイトを構築することができそうです。</p>
<p>というわけでまずは新鮮なタグとテンプレートの構造を順にみていくことにします。</p>
<h4>新しい技「変数のセットと呼び出し」</h4>
<p>テンプレートをみるとまずMTSetVarというタグがずら～っと並んでいます。MT4ではこのタグがいたるところで使われています。ドキュメントで調べてみるとこのタグはnameに指定した変数にvalueの値をセットするタグのようです。使い方はこんな感じ。</p>
<pre>&lt;MTSetVar name=&quot;変数名&quot; value=&quot;値&quot;&gt;
</pre>
<p></p>
<p>変数をセットしたら変数を呼び出す必要があるわけで、再びドキュメント参照。定義した変数から値を呼び出すにはMTGetVar、MTVarタグを利用するとあります。MTVarはMTGetVarと同じ働きをするということなので今回は無視。</p>
<pre>&lt;$MTGetVar name=&quot;変数名&quot;$&gt;
</pre>
<p>で、どこかで使われているだろうMTGetVarタグを探すことにします。メインページのテンプレートの1行目に</p>
<pre>&lt;MTSetVar name=&quot;body_class&quot; value=&quot;mt-main-index&quot;&gt;
</pre>
<p>とあり、「body_class」という変数に「mt-main-index」という値がセットされています。この値がどこでつかわれるのか知りたいので「body_class」でテンプレート内を検索してみます。</p>
<p class="align_center"><img src="http://power.scianto.net/img/entryimage/20070918_2.png" alt="" width="400" height="293" /></p>
<p>10個のテンプレートがヒットしました。とりあえず「ヘッダー」テンプレートを選択。この中に</p>
<pre>&lt;MTGetVar name=&quot;body_class&quot;&gt;</pre>
<p>という記述があるはずです。「ヘッダー」テンプレート内をみてみると・・・body要素のところに発見しました。</p>
<pre>&lt;body class=&quot;&lt;MTIf name=&quot;body_class&quot;&gt;&lt;$MTGetVar name=&quot;body_class&quot;$&gt; &lt;/MTIf&gt;～略～&gt;</pre>
<p>生成されているメインページのHTMLで該当部分が</p>
<pre>&lt;body class=&quot;mt-main-index&quot;～略～&gt;</pre>
<p>となっていることが確認できました。変数「body_class」はその名のとおりbody要素のclass名をあらわしていましたね。当たり前っちゃー当たりまえです。</p>
<p>ところで、無視したらいけないのが「<strong>MTIf</strong>」タグ。MT4からの新機能でいろいろな条件分岐ができるみたいですが、詳しく見るのは今回パス。簡単に説明すると</p>
<p><strong>「条件を満たした場合にのみ実行されるタグ」</strong></p>
<p>ということらしいっす。この例では「body_class」が存在したらという感じの意味になります。いろいろ使えそうなので研究の余地ありありです。</p>
<p>とりあえずこのあたりでまとめてみると</p>
<ol>
<li>メインページテンプレートにて変数「body_class」に値「mt-main-index」をセット（MTSetVarタグ）</li>
<li>MTIncludeで「ヘッダー」テンプレートを読み込む</li>
<li>body_classが変数にセットされているかどうか（MTifタグ）</li>
<li>変数がセットされていたら、値を呼び出す（MTGetVarタグ）</li>
</ol>
<p>という感じになります。</p>
<p>この変数セット→条件分岐→変数呼び出しという流れはMT4においてとっても重要なポイントになりそうなのでぜひマスターしたいところですね。</p>
<p>もちろんこれまでのようなテンプレートの作り方もできるみたいなので、そうなると弱い自分の楽したいって声が聞こえてきそうですが・・・。いやいやがんばれ俺！</p>
<p>次回はMTIfタグあたりをみていきたいと思っています。<br />]]></content:encoded>
			<wfw:commentRss>http://scianto.net/archives/2007/09/18223150.php/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://scianto.net/archives/2007/09/18223150.php" />
	</item>
		<item>
		<title>MT条件分岐：親カテゴリーと子カテゴリーで表示を変える方法</title>
		<link>http://scianto.net/archives/2006/12/18170856.php</link>
		<comments>http://scianto.net/archives/2006/12/18170856.php#comments</comments>
		<pubDate>Mon, 18 Dec 2006 08:08:56 +0000</pubDate>
		<dc:creator>paon</dc:creator>
				<category><![CDATA[web design]]></category>
		<category><![CDATA[MovableType]]></category>
		<category><![CDATA[テンプレート]]></category>

		<guid isPermaLink="false">http://scianto.net/wpmemo/?p=196</guid>
		<description><![CDATA[
通常、サブカテゴリー（子カテゴリー）ページのテンプレートは、その直接の親カテゴリーと同じテンプレート（カテゴリーアーカイブ）を元に作成されます。しかし、親カテゴリーと子カテゴリーのページデザイン（レイアウト）を違ったも [...]]]></description>
			<content:encoded><![CDATA[<p>
通常、サブカテゴリー（子カテゴリー）ページのテンプレートは、その直接の親カテゴリーと同じテンプレート（カテゴリーアーカイブ）を元に作成されます。しかし、親カテゴリーと子カテゴリーのページデザイン（レイアウト）を違ったものにしたいときがあります。<br />
そこで、今回は同じカテゴリーテンプレートをつかって親カテゴリーと子カテゴリーの表示内容を変更できるようなテンプレートの使い方を紹介します。<br />
</p>

<span id="more-196"></span>
<h2>親カテゴリーと子カテゴリーからなる２階層構造の場合</h2>
<p>
たとえばこのサイトでは親カテゴリーには、そのカテゴリーに属する子カテゴリーのリストをメインに表示しています。また子カテゴリーではそのカテゴリーに属するエントリーを指定数だけ表示しています。
</p>
<p>
このように親カテゴリーと子カテゴリーとで表示する内容を変えるためには次のMTテンプレートタグを利用します。
</p>
<blockquote>
<p>
<strong>MTHasSubCategories</strong><br />
現在のカテゴリーにサブカテゴリーが登録されているときだけ実行する条件タグです。
</p>
</blockquote>
<blockquote>
<p>
<strong>MTHasNoSubCategories</strong><br />
現在のカテゴリーにサブカテゴリーが存在しないときだけ実行する条件タグです。
</p>
</blockquote>
<p>
これらのMTタグの使い方は次のような感じになります。
</p>
<textarea class="xml" name="code">&lt;MTHasSubCategories&gt;
&lt;!&#8211; ここに親カテゴリーで表示したい内容を出力するテンプレートタグを記述します。 &#8211;&gt;
&lt;/MTHasSubCategories&gt;

&lt;MTHasNoSubCategories&gt;
&lt;!&#8211; ここに子カテゴリーで表示したい内容を出力するテンプレートタグを記述します。 &#8211;&gt;
&lt;/MTHasNoSubCategories&gt;
</textarea>
<p>
この使い方は子カテゴリーをもつの２階層構造までに対応しています。孫カテゴリーをもつ場合の記述例は次に書いています。
</p>
<p>
このようにするとテンプレートの中身は長くなってしまいますが、親と子のデザインを変えることができます。この方法とは別にMTHasSubCategories（またはMTHasNoSubCategories）タグの中でMTElseをつかった条件分岐もできると思います。
</p>
<h2>孫カテゴリーまである３階層構造の場合&nbsp;</h2>
<p>
サブカテゴリーの下にさらにサブカテゴリー（孫カテゴリー）を作っているような３階層のカテゴリー構造でもそれぞれデザインを変えたいというときはもうちょっと複雑になります。次のタグを使います。
</p>
<blockquote>
<p>
<strong>MTHasParentCategories</strong><br />
現在のカテゴリーに親カテゴリーが存在されているときだけ実行する条件タグです。
</p>
</blockquote>
<blockquote>
<p>
<strong>MTHasNoParentCategories</strong><br />
現在のカテゴリーに親カテゴリーが存在しないときだけ実行する条件タグです。
</p>
</blockquote>
<p>
３階層の場合は次のようにするといいかもしれません。これは試してないのでご了承ください。
</p>
<textarea class="xml" name="code">&lt;MTHasSubCategories&gt;

&lt;MTHasNoParentACategories&gt;
&lt;!&#8211; ここに親カテゴリーで表示したい内容を出力するテンプレートタグを記述します。 &#8211;&gt;
&lt;/MTHasNoParentACategories&gt;

&lt;MTHasParentACategories&gt;
&lt;!&#8211; ここに子カテゴリーで表示したい内容を出力するテンプレートタグを記述します。 &#8211;&gt;
&lt;/MTHasNoParentACategories&gt;

&lt;/MTHasSubCategories&gt;

&lt;MTHasNoSubCategories&gt;
&lt;!&#8211; ここに孫カテゴリーで表示したい内容を出力するテンプレートタグを記述します。 &#8211;&gt;
&lt;/MTHasNoSubCategories&gt;></textarea>
<p>
こんな感じでしょうか？サブカテゴリーを持っているカテゴリーのなかでさらに親カテゴリーをもっているかどうかで条件分岐しています。
</p>
<p>
記憶が確かではないですが、この部分をモジュール化（Widget）してしまうとうまく動作しなかったような気がします。直接カテゴリーアーカイブテンプレートに埋め込むようにしたほうがいいかもしれません。
</p>]]></content:encoded>
			<wfw:commentRss>http://scianto.net/archives/2006/12/18170856.php/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://scianto.net/archives/2006/12/18170856.php" />
	</item>
		<item>
		<title>MovableTypeをもっと使いやすくカスタマイズ</title>
		<link>http://scianto.net/archives/2006/11/15154031.php</link>
		<comments>http://scianto.net/archives/2006/11/15154031.php#comments</comments>
		<pubDate>Wed, 15 Nov 2006 06:40:31 +0000</pubDate>
		<dc:creator>paon</dc:creator>
				<category><![CDATA[web design]]></category>
		<category><![CDATA[MovableType]]></category>
		<category><![CDATA[テンプレート]]></category>
		<category><![CDATA[プラグイン]]></category>

		<guid isPermaLink="false">http://scianto.net/wpmemo/?p=173</guid>
		<description><![CDATA[

MovableTypeの特徴を簡単にあげるならば、テンプレート編集の自由度の高さとプラグインによる機能拡張だといえます。このブログで取り上げたテンプレートのカスタマイズやプラグインをまとめたページです。



テンプ [...]]]></description>
			<content:encoded><![CDATA[<p class="imgleft">
<img width="150" height="100" alt=" " src="http://power.scianto.net/img/entryimage/customize01.gif" class="pict" />
<strong>MovableType</strong>の特徴を簡単にあげるならば、テンプレート編集の自由度の高さとプラグインによる機能拡張だといえます。このブログで取り上げたテンプレートのカスタマイズやプラグインをまとめたページです。
</p>

<span id="more-173"></span>
<h2>テンプレートを自由自在に</h2>
<p>
一般的な無料のブログサービスではサイトの雛形となる<strong>テンプレート</strong>をまったく編集できなかったり、編集できるテンプレートの種類に制限があったりということがほとんどです。HTML&amp;CSSに慣れてくるにつれてもっと自由にサイトのデザインをしたいと思うようになるでしょう。<br />
MovableTypeではトップページ、カテゴリーページ、エントリーページのテンプレートだけでなくいろいろな種類のテンプレートを作成することが出来ます。たとえば自分のプロフィールやサイトについての説明をするページのテンプレート、モブログから投稿した画像だけをリスト表示するテンプレートなどどんなことをやりたいのかが明確になっていればそれにあわせたテンプレートをいくつでも作成することが出来ます。
</p>
<p style="font-size: small; color: #cc0000">
※テンプレートのカスタマイズについての記事はただいま準備中です。
</p>
<h2>プラグインで機能拡張</h2>
<p>
MovableTypeの最大の特徴といえるのが<span style="font-weight: bold">プラグイン</span>です。プラグインはMovableTypeの機能を拡張してくれるプログラムです。プラグインは世界中の人々によって日々開発されているのでプログラムがまったくわからない人でもインストールの方法さえ覚えれば利用することが出来ます。なかにはシェアウェアとしてお金を払うものもありますが、そのほとんどが無料で提供されているが嬉しいですね。
</p>
<p style="font-size: small; color: #cc0000">
※管理画面やテンプレート用のプラグインやアフィリエイトサイト運営に便利なプラグインの紹介記事を作成中です。
</p>]]></content:encoded>
			<wfw:commentRss>http://scianto.net/archives/2006/11/15154031.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://scianto.net/archives/2006/11/15154031.php" />
	</item>
	</channel>
</rss>
