<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>metaphase coder team labs</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/" />
    <link rel="self" type="application/atom+xml" href="http://labs.metaphase.co.jp/blog/coder/atom.xml" />
    <id>tag:labs.metaphase.co.jp,2008-04-28:/blog/coder//3</id>
    <updated>2009-12-22T02:29:54Z</updated>
    
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type Open Source 4.1</generator>

<entry>
    <title>Movable Type 5</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/mt/movable-type-5.html" />
    <id>tag:labs.metaphase.co.jp,2009:/blog/coder//3.98</id>

    <published>2009-07-08T06:22:18Z</published>
    <updated>2009-12-22T02:29:54Z</updated>

    <summary>久々の更新。 本日『Movable Type 5』が発表されました。8月上旬にベ...</summary>
    <author>
        <name>TaRo</name>
        
    </author>
    
        <category term="Movable Type" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://labs.metaphase.co.jp/blog/coder/">
        <![CDATA[<p>久々の更新。</p>
<p>本日『Movable Type 5』が発表されました。<br />8月上旬にベータ版。10月に正式リリースになるようです。</p>
<p>大きく注目すべき点は料金体系がかわったところでしょうか。<br />今までのユーザー追加ライセンスが廃止となり、ユーザー数無制限ライセンスとなるようです。<br />いくらでもユーザー数が増やせるのでライターの人数を気にしがちな情報系サイトなどが構築しやすく（料金的に）なるのではないでしょうか。</p>
<p>「ブログ・ソフトウェア」から「ウェブサイト管理ソフトウェア」とツールとしての立ち位置も変化を見せているのもおもしろいですね。</p>
]]>
        
    </content>
</entry>

<entry>
    <title>半角英数字を改行する</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/javascript/post-14.html" />
    <id>tag:labs.metaphase.co.jp,2009:/blog/coder//3.93</id>

    <published>2009-05-22T07:02:12Z</published>
    <updated>2009-05-22T07:23:26Z</updated>

    <summary>URLやメールアドレスなどの半角英数字を羅列した際に、それを包括する要素を突き抜...</summary>
    <author>
        <name>KuRo</name>
        
    </author>
    
        <category term="Java Script" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://labs.metaphase.co.jp/blog/coder/">
        <![CDATA[<p>URLやメールアドレスなどの半角英数字を羅列した際に、それを包括する要素を突き抜けてレイアウト崩れが発生することがあります。<br />これは、スペース等の区切りが登場するまで一つの単語として認識され、通常では改行されません。</p>
<p>これをJSで解決されてたブログを見つけたのでご紹介します。</p>]]>
        <![CDATA[<p>CSSにて[word-break:break-all;]と指定すれば、半角英数字の文字列の途中であっても領域に合わせて改行することが可能です。<br />しかし、これはIEでしか対応しておらず、そのほかのブラウザでは対応していません。</p>
<p>「to-R」というブログで「wordBreak.js」というものが公開されており、IE以外のブラウザでも[word-break:break-all;]と同様の効果が得られるようです。<br /><a href="http://blog.webcreativepark.net/2008/09/14-211341.html">FirefoxとOperaでword-break:break-allを実現する「wordBreak.js」[to-R]</a></p>
<p>to-Rさんで公開されているJSではtable要素にしか対応していませんが、こちらにてそのほかの要素にも適応できる方法が紹介されています。<br /><a href="http://tetra-pod.seesaa.net/article/108368111.html" target="_blank">半角英数文字列の改行 : 消波ブログ（一級建築士受験録）</a></p>
<p>table要素以外にも適応できるようにカスタマイズした際に、インライン要素（span要素など）に適応させた場合、IE8ではうまく改行されない様です。<br />そのためCSSで次の様に指定すると、うまく改行されるようになります。</p>
<blockquote>
<p>span.wordBreak{<br />display:inline-block;<br />}</p>
</blockquote>
]]>
    </content>
</entry>

<entry>
    <title>バックアップと復元の注意点</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/mt/post-12.html" />
    <id>tag:labs.metaphase.co.jp,2009:/blog/coder//3.92</id>

    <published>2009-02-06T04:44:36Z</published>
    <updated>2009-02-06T05:13:41Z</updated>

    <summary>案件でMTを使用していてクライアントから、「MTが正常に動かなくなった」と連絡が...</summary>
    <author>
        <name>TaRo</name>
        
    </author>
    
        <category term="Movable Type" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://labs.metaphase.co.jp/blog/coder/">
        <![CDATA[<p>案件でMTを使用していてクライアントから、<br />「MTが正常に動かなくなった」と連絡があり、もろもろ調べて調整したところブログIDが変更されていることが判明しました。</p>]]>
        <![CDATA[<p>ブログのIDが変更されてしまった原因が、クライアント側でMTの機能のバックアップと復元を行ったことでIDが変わってしまっていたようです。<br />幸い、ブログIDを取得している部分がそれほど無かったので大きな変更は無かったんですが、MultiBlogを多用しているCMSライクなサイトだったらかなり深刻なことになっていたと思うとゾッとしますね。</p>
<p>たびたびお世話になってる『<a href="http://www.dakiny.com/">世界中の１％の人々へ</a>』でこの辺のことを詳しく書いてあったので紹介＆リマインダーも兼ねて簡単にまとめておきます。</p>
<ul class="list01">
<li>長所
<ol>
<li>専門知識は不用で、作業が簡単</li>
<li>MTが動作するDBならば、種類、バージョンに依存しない</li>
<li>DBの文字コードに依存しない</li>
<li>phpMyAdmin等の、SQL文一括ダウンロード機能が利用できない場合にもデータ移転可</li>
</ol></li>
<li>短所
<ol>
<li>ブログIDが変わる</li>
<li>データが多い場合や、サーバーによっては、バックアップや復元中に止まり、移転できないこともある</li>
<li>全てのデータが移植できるわけではない</li>
<li>MTのバージョンが異なる場合には利用できない</li>
</ol></li>
</ul>
<blockquote>
<p>ブログIDについて、少し言及しておくと、MTの場合、ブログを作った順番にIDがふられる。復元は新しいブログで作られる。元のIDが１であっても、移転先にはすでにID1はあるので、ID2に変わる。</p>
</blockquote>
<p>今回、問題になったのはこの部分ですね。<br />バックアップ・復元に関してはまったくやったこと無かったんでとても勉強になりました。</p>
<p>ブログIDを多用しているブログではバックアップ・復元はあまりお勧めできないですね。<br />とは言え、バックアップ・復元をしないというのも無理な話なので、ブログIDを多用しすぎるのもこの辺を考えるとあまりよろしくないのかな、と思いました。<br /></p>
<p>参考ドキュメント</p>
<ul class="list01">
<li><a href="http://www.dakiny.com/archives/movable-type/movable_type_423backup_and_recovery/" target="_blank">【Movable Type 4.23】バックアップと復元を使ってサーバー移転</a></li>
</ul>
]]>
    </content>
</entry>

<entry>
    <title>日本Web協会　マークアップワーキンググループ発足</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/frommeta/web.html" />
    <id>tag:labs.metaphase.co.jp,2009:/blog/coder//3.91</id>

    <published>2009-02-05T02:22:29Z</published>
    <updated>2009-02-05T02:39:36Z</updated>

    <summary>メタフェイズも会員として参加している日本Web協会（通称：W2C）にて、2月4日...</summary>
    <author>
        <name>KuRo</name>
        
    </author>
    
        <category term="from metaphase" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://labs.metaphase.co.jp/blog/coder/">
        <![CDATA[<p>メタフェイズも会員として参加している<a href="http://www.w2c.jp/" target="_blank">日本Web協会（通称：W2C）</a>にて、2月4日付でマークアップワーキンググループが発足しました。</p>]]>
        <![CDATA[<p><a href="http://www.ba-mp.com/" target="_blank">BAメガパワーズ</a>の柳沢氏をリーダーとして、私KUROがサブリーダーとして参加。<br />メタフェイズからは、他2名もワーキンググループへ参加しています。</p>
<p>活動目的としては、昨年WCAG2.0が勧告され今年はJIS X-8341:2009が公布されますが、それらを実装の面から捉えどう組み込んでいくか。また、マークアップ作業の効率化や研究等をテーマとしています。</p>
<p>まだまだ発足したばかりなので、具体的な中身はこれからといった感じですが、W2Cの会員であればどなたでも参加可能となっています。<br />マークアップエンジニア（コーダー）でなくても大歓迎ですので、興味ある方はW2Cの会員専用サイトから参加登録をお願いします。</p>
]]>
    </content>
</entry>

<entry>
    <title>IE以外でCSSが読み込めない</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/css/iecss.html" />
    <id>tag:labs.metaphase.co.jp,2009:/blog/coder//3.90</id>

    <published>2009-02-02T02:50:43Z</published>
    <updated>2009-02-02T03:03:52Z</updated>

    <summary>先日、IE以外（この時はFirefox3、Safari3にて確認）でCSSが読み...</summary>
    <author>
        <name>KuRo</name>
        
    </author>
    
        <category term="CSS" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://labs.metaphase.co.jp/blog/coder/">
        <![CDATA[<p>先日、IE以外（この時はFirefox3、Safari3にて確認）でCSSが読み込めないという現象に遭遇しました。</p>]]>
        <![CDATA[<p>原因としては、CSSファイル中に記述ミスがあったわけですが、通常CSSは次のように記述します。</p>
<blockquote>
<p>.class{<br />・・・<br />}</p>
</blockquote>
<p>今回、エラーを起こしたCSSでは次のような記述ミスをしていました。</p>
<blockquote>
<p>.class{{<br />・・・<br />}</p>
</blockquote>
<p>開始{を二つ記述してしまい、IE以外ではそれ以降のCSSが一切読み込まれないようです。<br />"ついうっかり"やってしまいそうなミスなので、要注意ですね。</p>
]]>
    </content>
</entry>

<entry>
    <title>特定のカテゴリを除外して表示</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/mt/post-11.html" />
    <id>tag:labs.metaphase.co.jp,2008:/blog/coder//3.89</id>

    <published>2008-12-10T05:49:39Z</published>
    <updated>2008-12-10T05:52:37Z</updated>

    <summary><![CDATA[&lt;MTEntries&gt;タグでエントリーリストを生成した時に特定のカテ...]]></summary>
    <author>
        <name>TaRo</name>
        
    </author>
    
        <category term="Movable Type" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="mt" label="MT" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="カテゴリ" label="カテゴリ" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://labs.metaphase.co.jp/blog/coder/">
        <![CDATA[<p>&lt;MTEntries&gt;タグでエントリーリストを生成した時に特定のカテゴリを表示することはできるんですが、特定のカテゴリを除外して表示することはできません。<br />
特定のカテゴリをリストから除外するプラグイン（<a href="http://www.staggernation.com/mtplugins/#FilterCategories" target="_blank">FilterCategories</a>） はあるんですが、除外できるのが&lt;MTCategories&gt;で生成するカテゴリーのリストのみで、エントリーリストではうまくいきませんでした。。。</p>
<p>試行錯誤をくりかえしてプラグイン無しで特定のカテゴリを除外する方法を見つけたので紹介します。</p>]]>
        <![CDATA[<p>まずは、除外するカテゴリの記事のリストを生成</p>
<pre class="sampleCodeA01">
<code>
&lt;MTSetVarBlock name="hidden"&gt;
&lt;MTEntries blog_ids="1,2" category="hoge" lastn="9999"&gt;
<$MTEntryTitle$>
&lt;/MTEntries&gt;
&lt;/MTSetVarBlock&gt;
</code>
</pre>
<p>『hoge』の部分は除外したいカテゴリ名をいれてください。<br />これをページの一番上など、任意の場所に置きます。<br />&lt;MTSetVerBlock&gt;で囲うことで生成したリストを変数の値にして見えなくさせています。</p>
<p>続いて、残りのエントリーのリストを作成。</p>
<pre class="sampleCodeA01">
<code>
&lt;MTEntries blog_ids="1,2" lastn="10" unique="1"&gt;
<$MTEntryTitle$>
&lt;/MTEntries&gt;
</code>
</pre>
<p>『unique="1"』を指定することで前回リストアップしたものを除外してくれます。<br />これで特定のカテゴリを除いたエントリーが最新10件表示されます。</p>
]]>
    </content>
</entry>

<entry>
    <title>table要素のセル幅を均等にする</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/css/table.html" />
    <id>tag:labs.metaphase.co.jp,2008:/blog/coder//3.88</id>

    <published>2008-12-08T10:50:17Z</published>
    <updated>2008-12-08T11:18:11Z</updated>

    <summary>table要素のセル幅を、Javascript等を使わずCSSのみで実現する方法...</summary>
    <author>
        <name>KuRo</name>
        
    </author>
    
        <category term="CSS" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://labs.metaphase.co.jp/blog/coder/">
        <![CDATA[<p>table要素のセル幅を、Javascript等を使わずCSSのみで実現する方法です。</p>]]>
        <![CDATA[<p><a href="http://labs.metaphase.co.jp/blog/coder/kuro/evenly-table/" target="_blank">サンプル</a></p>
<pre class="sampleCodeA01"><code>table{<br />width:***px;（%指定も可）<br />table-layout:fixed;<br />}</code></pre>
<p>table要素は、まずtable要素の中身全てを読み込み、それからセルの横幅等を計算して画面上へ描画します。<br />「table-layout」プロパティは、1行目が読み込まれた時点で各セルの横幅を決定し、画面上へと描画するプロパティです。</p>
<p>「fixed」を指定した場合、次の順序に従って横幅が計算されます。</p>
<ol>
<li>横幅が定められている列要素の幅を確保します。</li>
<li>横幅が定められていないものの、第一行目のセルにて横幅が定められている列要素の幅を確保します。</li>
<li>残りの列については、余った幅を等分して得られた幅が与えられます。</li>
</ol>
<p>つまり、横幅が指定されたセルの場合はその幅となり、それ以外は余った幅で均等になるということです。<br />横幅が全く指定されていない場合は、全てのセル幅が均等になるというわけです。</p>
<p>なお「table-layout」を使用すると、table要素の描画が早くなるらしい。</p>
]]>
    </content>
</entry>

<entry>
    <title>アーカイブタイトルの表記を変える</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/mt/post-13.html" />
    <id>tag:labs.metaphase.co.jp,2008:/blog/coder//3.87</id>

    <published>2008-11-12T11:49:12Z</published>
    <updated>2008-11-12T11:52:01Z</updated>

    <summary>年別・月別・日別アーカイブの表記を変更する方法を紹介します。 ...</summary>
    <author>
        <name>TaRo</name>
        
    </author>
    
        <category term="Movable Type" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://labs.metaphase.co.jp/blog/coder/">
        <![CDATA[<p>年別・月別・日別アーカイブの表記を変更する方法を紹介します。</p>
]]>
        <![CDATA[<p>アーカイブのタイトル表記は『YYYY年MM月DD日』のように年月日が必ず入った表記になっています。<br />ページデザインの都合上、『YYYY/MM/DD』の形にしたいとき非常に困る仕様です。<br />&lt;$MTArchiveTitle$&gt;に前回紹介した「regex_replaceモディファイア」を追加することでこれを実現することができるようになります。</p>
<p>例）2008年12月 → 2008/12</p>
<pre class="sampleCodeA01">
<code><$MTArchiveTitle regex_replace="/(\d+)&#24180;(\d+)&#26376;/","$1/$2"$></code>
</pre>
<p>『\d』は何でもいい数字を表わす正規表現です。<br />『+』は1文字以上の繰り返しを表わす正規表現です。<br />『()』で括ることでマッチした文字列を$1で参照することができます。<br />『&amp;#24180;』はエンコードされている「月」です。<br />これで「月」がの文字が出現するまで数列を取得することになるので「2008」を$1で参照することができます。<br />同様に日付の部分も$2で参照しています。</p>
<p>『/』の部分を変更することで『2008.12』のような表記も可能になります。<br />注意点としては、『月』等の文字がエンコードされているのでエンコードされている文字を使用しなければマッチしないという点です。（自分もひっかかりました。。。）</p>
<p>正規表現に慣れていないとちょっと難しいかもしれませんね。</p>
]]>
    </content>
</entry>

<entry>
    <title>IEで背景画像がずれる</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/css/ie-1.html" />
    <id>tag:labs.metaphase.co.jp,2008:/blog/coder//3.84</id>

    <published>2008-11-12T07:21:30Z</published>
    <updated>2008-11-12T07:22:13Z</updated>

    <summary>body等に対して背景画像を中央揃えにした際に、IEだけ背景画像が1pxだけずれ...</summary>
    <author>
        <name>KuRo</name>
        
    </author>
    
        <category term="CSS" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://labs.metaphase.co.jp/blog/coder/">
        <![CDATA[<p>body等に対して背景画像を中央揃えにした際に、IEだけ背景画像が1pxだけずれるという現象があります。<br /><a href="http://labs.metaphase.co.jp/blog/coder/kuro/background-center/index.html" target="_blank">サンプル</a></p>]]>
        <![CDATA[<p>どうも、ウィンドウ幅が奇数の場合に発生するようで、中央揃えした際に奇数値が割り切れずにずれるのはないかと思います。</p>
<p>回避策としては非常に簡単で、背景画像を中央寄せにしている要素（サンプルの場合body要素）に、padding-left:1pxを指定してあげると直ります。<br /><a href="http://labs.metaphase.co.jp/blog/coder/kuro/background-center/index2.html" target="_blank">サンプル2</a></p>
<p>たしかにこの回避方法でずれなくはなったんですが、ウィンドウ幅が偶数の場合はなぜずれが起きないんだろう？という新たな疑問。<br />ウィンドウ幅が奇数の場合は、1pxプラスされているので偶数になって割り切れるのは分かるんですが、偶数の場合は1pxプラスされて奇数になっているのに、なぜずれないのだろうと・・・<br />IEはよく分からんです。</p>
]]>
    </content>
</entry>

<entry>
    <title>MTタグをJSで使う場合に使用するグローバルモディファイア</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/mt/mtjs.html" />
    <id>tag:labs.metaphase.co.jp,2008:/blog/coder//3.81</id>

    <published>2008-10-28T12:22:44Z</published>
    <updated>2008-10-28T12:24:56Z</updated>

    <summary>ある案件でJS内の文字列にMTタグで出力した値を使用していて、アポストロフィがシ...</summary>
    <author>
        <name>TaRo</name>
        
    </author>
    
        <category term="Movable Type" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://labs.metaphase.co.jp/blog/coder/">
        <![CDATA[<p>ある案件でJS内の文字列にMTタグで出力した値を使用していて、アポストロフィがシングルクォーテーションとぶつかってJSのエラーを起こしているというケースに遭遇しました。<br>その時行った回避策を紹介します。</p>]]>
        <![CDATA[<h4>グローバルモディファイア「regex_replace」を使用する</h4>
<p>「regex_replace」はMTタグで出力された値を正規表現を使ってその値を置換することができるグローバルモディファイアです。<br>使用方法は「regex_replace=&quot;/A/&quot;,&quot;B&quot;」の形で用い、「A」を「B」に置換します。<br>JSで使うときの回避策を考えた時になぜかこちらの方が先に浮かびました。</p>
<p>こちらのやりかただと、正規表現を書かなきゃならないし、エスケープする文字も個別に書かなきゃならない。<br>正規表現をあまり知らない自分としては非常にハードルの高い策でした。<br>半日ほど費やし、完成したところでもう一つの回避策に気付きました。</p>
<h4>グローバルモディファイア「encode_js」を使用する</h4>
<p>「encode_js」はMTタグで出力された値をJSの文字列として使えるようにエンコードをしてくれるグローバルモディファイアです。ま、見たままです。<br>使い方も簡単。「encode_js=&quot;1&quot;」をモディファイアとしてタグに挿入するだけ。</p>
<p>半日格闘してこのモディファイアの存在を思い出した自分にすごくガッカリしました。。。<br>今まで使ったことがないとは言え、確実に「regex_replace」よりは目にしてるはずなのに、なぜ半日も気づかなかったのか。。。</p>
<p>結論としては、どちらでもエラーを回避できたので「regex_replace」、「encode_js」でもどちらでも問題ないかと思います。<br>ただ、「encode_js」の方がはるかに簡単ですので、「encode_js」の方を使うことをお勧めします。</p>
]]>
    </content>
</entry>

<entry>
    <title>グローバル＆ローカルナビ　管理テンプレート</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/dreamweaver/post-10.html" />
    <id>tag:labs.metaphase.co.jp,2008:/blog/coder//3.80</id>

    <published>2008-10-01T03:43:44Z</published>
    <updated>2008-10-01T04:07:26Z</updated>

    <summary>グローバルナビとローカルナビを管理するためのテンプレートを作ってみました。以下か...</summary>
    <author>
        <name>KuRo</name>
        
    </author>
    
        <category term="Dreamweaver" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://labs.metaphase.co.jp/blog/coder/">
        <![CDATA[<p>グローバルナビとローカルナビを管理するためのテンプレートを作ってみました。<br />以下からダウンロードできます。</p>]]>
        <![CDATA[<p><a href="http://labs.metaphase.co.jp/blog/coder/kuro/dw-template_sample.zip">Dreamweaverサンプルテンプレート</a></p>
<table>
<caption>Dreamweaverサンプルテンプレートの中身</caption>
<thead>
<tr>
<th>ファイル名</th>
<th>説明</th>
</tr>
</thead>
<tbody>
<tr>
<th>/templates/template.dwt</th>
<td>全HTMLの基本となるテンプレート</td>
</tr>
<tr>
<th>/templates/category-1.dwt</th>
<td>カテゴリー1のテンプレート</td>
</tr>
<tr>
<th>/templates/category-2.dwt</th>
<td>カテゴリー2のテンプレート</td>
</tr>
<tr>
<th>/templates/category-3.dwt</th>
<td>カテゴリー3のテンプレート</td>
</tr>
<tr>
<th>/templates/category-4.dwt</th>
<td>カテゴリー4のテンプレート</td>
</tr>
<tr>
<th>/category1/以下</th>
<td>/templates/category-1.dwtを利用して作成したHTML</td>
</tr>
<tr>
<th>/category2/以下</th>
<td>/templates/category-2.dwtを利用して作成したHTML</td>
</tr>
<tr>
<th>/category3/以下</th>
<td>/templates/category-3.dwtを利用して作成したHTML</td>
</tr>
<tr>
<th>/category4/以下</th>
<td>/templates/category-4.dwtを利用して作成したHTML</td>
</tr>
</tbody>
</table>
<p>簡単に構造を説明すると、[/templates/template.dwt]が全てのHTMLのテンプレートとなります。<br>[/templates/category-*.dwt]は、テンプレートの入れ子を利用した[/templates/template.dwt]の子テンプレートとなります。<br>各HTMLは、[/templates/category-*.dwt]をテンプレートとして作成されたHTMLであり、[/templates/template.dwt]から見ると孫ということになります。</p>
<p>ヘッダーやフッターなど全ページ共通部分を変更する場合は[/templates/template.dwt]を編集し、<br>ローカルナビゲーションを変更する場合は[/templates/category-*.dwt]を編集するという構造になっています。</p>
<p>このような二重構造にすることにより、各カテゴリー内のローカルナビゲーションの管理をスリム化しつつ、全ページ共通部分は一元管理することが可能となっています。</p>
<p>また、現在地表示の切り替えを行うために、[category][localNav]の二つのプロパティを用意し、それぞれに整数値を入れることで対応しています。</p>]]>
    </content>
</entry>

<entry>
    <title>FiveStarRating</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/dreamweaver/fivestarrating.html" />
    <id>tag:labs.metaphase.co.jp,2008:/blog/coder//3.79</id>

    <published>2008-09-30T15:26:14Z</published>
    <updated>2008-09-30T15:29:40Z</updated>

    <summary>エントリーを評価するMTプラグイン、FiveStarRatingを使ってみました...</summary>
    <author>
        <name>TaRo</name>
        
    </author>
    
        <category term="Dreamweaver" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://labs.metaphase.co.jp/blog/coder/">
        <![CDATA[<p>エントリーを評価するMTプラグイン、FiveStarRatingを使ってみました。このプラグインはサンプルプラグインとしてMTの中に配置されています。</p>

]]>
        <![CDATA[<p>インストール方法はMTの解凍したファイルの中の/extras/examples/plugins/FiveStarRatingの中身をそれぞれmtとmt-staticフォルダにアップロードするだけでOKです。<br>あとは&lt;$MTFiveStarRatingThunk$&gt;タグを任意の場所に設置するだけ。<br>使えるタグは下記の通り。ただ、「namespace="FiveStarRating" 」を入れないとうまくデータを取得できないようです。</p>
<table border="0" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th scope="row">タグ</th>
<th>意味</th>
</tr>
</thead>
<tr>
<td scope="row">MTEntryRank </td>
<td>ブログ記事のランク</td>
</tr>
<tr>
<td scope="row">MTEntryScore</td>
<td>ブログ記事のスコア（★）の合計</td>
</tr>
<tr>
<td scope="row">MTEntryScoreAvg</td>
<td>ブログ記事のスコア平均</td>
</tr>
<tr>
<td scope="row">MTEntryScoreCount </td>
<td>ブログ記事への投票合計数</td>
</tr>
<tr>
<td scope="row">MTEntryScoreHigh </td>
<td>ブログ記事に投票された一番高いスコア</td>
</tr>
<tr>
<td scope="row">MTEntryScoreLow </td>
<td>ブログ記事に投票された一番低いスコア</td>
</tr>
</table>
<p>Mozilla系ブラウザではうまく表示されない、評価が反映されるタイミングが謎、だったりといかにもサンプルっぽいつかめないプラグインです。<br>ちゃんと使えるようになるといいんですけどね。</p>
<p>ちなみに、MT4.2にこのプラグインは入っていないようです。</p>]]>
    </content>
</entry>

<entry>
    <title>～（波ダッシュ）の文字化け</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/mt/post-9.html" />
    <id>tag:labs.metaphase.co.jp,2008:/blog/coder//3.78</id>

    <published>2008-09-30T13:28:47Z</published>
    <updated>2008-09-30T14:12:20Z</updated>

    <summary>案件でMTを構築しているときに、「～（波ダッシュ）」が文字化けする現象に出会いま...</summary>
    <author>
        <name>TaRo</name>
        
    </author>
    
        <category term="Movable Type" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://labs.metaphase.co.jp/blog/coder/">
        <![CDATA[<p>案件でMTを構築しているときに、「～（波ダッシュ）」が文字化けする現象に出会いました。</p>
<p>最初はまったく気付かず、何度も同じ修正が来るのでそこでやっと気付きました。<br>エントリー書いて保存して、再構築すると「～」が「?」に変換されてしまったので、エントリーを保存する時に文字コードが変換されていたようです。</p>
<p>原因を調べたところ、Windows 上のブラウザからは、文字列がShift_JISでプログラムに渡されているとその過程で化けてしまうようです。<br>MTの文字コードもUnicodeで出力されるファイルもUnicodeなのに化けてしまっていたので全く原因がわからず、テストアップの時間も迫っていたので今回は実体参照（&amp;#65374;）で対応してことなきをえました。<br>他のMTで調べてもならなかったので特殊な状況なのかな、と思います。</p>
<p>「～」を使うときは注意が必要ですね。</p>]]>
        
    </content>
</entry>

<entry>
    <title>web creators vol.82 (2008年10月号)で小山田が執筆しています</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/frommeta/web-creators-vol82-200810.html" />
    <id>tag:labs.metaphase.co.jp,2008:/blog/coder//3.77</id>

    <published>2008-09-12T13:54:14Z</published>
    <updated>2008-09-12T14:19:08Z</updated>

    <summary>web creators vol.82 (2008年10月号)の巻頭特集『［永久...</summary>
    <author>
        <name>eKKo</name>
        
    </author>
    
        <category term="CSS" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="from metaphase" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://labs.metaphase.co.jp/blog/coder/">
        <![CDATA[<p>web creators vol.82 (2008年10月号)の巻頭特集『［永久保存版］使えるCSSデザインの技152』の中で弊社の小山田が6つの記事を担当しました。</p>


]]>
        <![CDATA[<ul class="list01">
<li>[tips029] 領域から一部がはみ出したデザインを実現する</li>
<li>[tips045] 見出しと本文のインデント関係を効率よく実現する</li>
<li>[tips076] display:inline-blockを非対応のブラウザで使う</li>
<li>[tips096] 背景を使わずに画像を表示する</li>
<li>[tips139] 文章に合わせて中央ぞろえと左揃えを自動調節</li>
<li>[tips149] 画像とテキストの天地中央ぞろえを実現する</li>
</ul>
<p>是非参考にしてみてください。</p>]]>
    </content>
</entry>

<entry>
    <title>トピックパスとtitle要素の連動</title>
    <link rel="alternate" type="text/html" href="http://labs.metaphase.co.jp/blog/coder/dreamweaver/title.html" />
    <id>tag:labs.metaphase.co.jp,2008:/blog/coder//3.76</id>

    <published>2008-09-01T09:32:56Z</published>
    <updated>2008-09-01T09:35:57Z</updated>

    <summary>テンプレートプロパティの一つに、編集可能属性というものがあります。 @@(変数名...</summary>
    <author>
        <name>KuRo</name>
        
    </author>
    
        <category term="Dreamweaver" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://labs.metaphase.co.jp/blog/coder/">
        <![CDATA[<p>テンプレートプロパティの一つに、編集可能属性というものがあります。</p>
<pre class="sampleCodeA01">
<code>@@(変数名)@@</code>
</pre>
<p>編集不可能領域の中であっても、一部だけを書き換えられるというものです。<br />また同一の変数を指定すれば、ページ内の複数個所を一気に書き換えられるという性質も持っています。<br />これを利用して、トピックパスとtitle要素を連動させる方法をご紹介します。</p>
]]>
        <![CDATA[<p>次のような形式を想定します。</p>
<pre class="sampleCodeA01">
<code>&lt;title&gt;ページタイトル - カテゴリー名 - サイト名&lt;/title&gt;</code>
</pre>
<pre class="sampleCodeA01">
<code>&lt;p&gt;HOME - カテゴリー名 - ページタイトル&lt;/p&gt;</code>
</pre>
<p>まずは、テンプレートプロパティを使うためには、変数名・データ型・初期値を設定する必要があります。<br />ページタイトルを編集可能属性として連動させるため、次のようにhead要素内に設定します。</p>
<pre class="sampleCodeA01">
<code>&lt;!-- TemplateParam name=&quot;pageTitle&quot; type=&quot;text&quot; value=&quot;ページタイトル&quot; --&gt;</code>
</pre>
<p>次に、編集可能属性をtitle要素とトピックパスに埋め込みます。</p>
<pre class="sampleCodeA01">
<code>&lt;title&gt;@@(pageTitle)@@ - カテゴリー名 - サイト名&lt;/title&gt;</code>
</pre>
<pre class="sampleCodeA01">
<code>&lt;p&gt;HOME - カテゴリー名 - @@(pageTitle)@@&lt;/p&gt;</code>
</pre>
<p>こうすると変数「pageTitle」を編集すれば、トピックパスとtitle要素のページタイトルが同時に書き換えられることになります。</p>
<p>今回はページタイトルだけを連動させる単純なものですが、条件分岐を用いてもっと複雑な使い方もできますし、<br />エクステンションを利用して外部CSVファイルなどで一括管理し、一気に埋め込むなんてことも可能なようです。</p>
<p>もっと作りこめば、簡易CMSとして十分な機能を用意できるんじゃないかと思います。</p>
]]>
    </content>
</entry>

</feed>
