- 2010-03-11 (木) 18:16
- MovableType


- こんな書き方どうでしょう
いや、もったいないなぁと思うわけですよ。
折角、質問した時って、何かを吸収しようとしている時なので、その時にタンスの奥から引っ張り出した回答してもなぁ・・・
答える側だって、日々進化してなくちゃならないと思いますよ。
これだけ、いろいろやってきてても、まだ新しい発見があるのが、Movable Type 5の面白い所。
「小粋空間: ブロックタグにelseタグを組み込んで判定する」
「ブログ記事が0件の場合、代替テキストを自動で表示したい。」
という質問に対して、確かに質問者はLI要素で「該当しない」旨表示しようとしてるけど、それをそのままリストで出力しちゃうのは、おかしいのでは?
やはりここは、UL>LIのマークアップでなく、PやDIVで出力すべきでしょう。確かに間違ってはいないのですがね。
小粋空間(yujiroさん)の記事は、もっとブームになって良いレベルの発見のはずなのに、誰も取り上げないんだなぁ。今の私だったら、こう書きます。(というか、書いたよ>テーマで)
<mt:Entries> <mt:EntriesHeader><ul></mt:EntriesHeader> <li><a href="<$mt:EntryLink$>"><$mt:EntryTitle$></a></li> <mt:EntriesFooter></ul></mt:EntriesFooter> <mt:Else> <p>該当しません。</p> </mt:Entries>
こんなに、シンプルに解りやすく書けるのにな・・・・ほんと、もったいない。
最近はMTIfのtag指定でモディファイア併用して比較するようになったのと、この使い方覚えて、かなりSetVar使う事が減りました。
同じく小粋空間の次の記事も、知らなかった話。こんな書き方があったんだと思いました。
「小粋空間: MTInclude タグの name モディファイア」
で、これ以外で最近良く使うようになったのが、4n5さんのこれ。
「グローバル・モディファイアを自由自在に使う方法 - 45式::雑記」
Technology on Information - ToI天野さんも、同じようなエントリー書いてます「MT-column > Tips > グローバルモディファイアの適用 - ToI」
MTForでの指定を、シックスアパート高山さんと話したら、確かにそうだが「マニアック」な書き方と評されました。で、私自身はMTUnlessが気に入りました。「判定条件を書かないので常に真になる」というのは、ものすごく理解しやすかったので。
それで、最近はテンプレートの全体を以下の様に囲む事が多くなりました。
<mt:Unless regex_replace="/\s*\n+/g","\n"> ~ </mt:Unless>
正規表現部分は、4n5さんのものを元に自分用に改良、「タブやスペースと改行のみ」の1行以上連続した行を、改行一個に置換する指定のつもり。プラグインいらないジャン!
- Newer >: ページインポーターで同名ウェブページを一括作成する方法
- < Older: 2冊目の本が出ます
ping a Trackback
- TrackBack URL for this entry.(1)
Comments:(9)
-
said
March 11, 2010 6:24 PM
|
ReplyThis!
やっぱりそうやりますよね。
>mtentriesのmtelseできるはずだよな〜、とおもいつつ試す環境がなかったのと、どこで誰がかいてたっけな〜、というのを思い出せずに回答してなかった><
ソースのとこのmt:ifの閉じタグはtypoですよね??
>答える側だって、日々進化してなくちゃならないと思いますよ。
ごもっともです。精進したいと思います><-
-
replied for
まーしー's comment
March 11, 2010 6:35 PM
|
ReplyThis!
>ソースのとこのmt:ifの閉じタグはtypoですよね??
まずいところを、見られてしまった・・・
てか、まーしー君反応早すぎ!修正しましたです
結構今回は、この手の手法バリバリ使ったので、Chapter2とChapter3では、完成度がかなり違っちゃいました。さっきChapter2見直したら、まるっと書き直したくなった。
-
-
replied for
oscar's comment
March 11, 2010 7:24 PM
|
ReplyThis!
たまたまTwitterみてたときに流れてきてたので!
まるっと書き直し版を単著という形で出すんですかね(笑
テーマの使用が広まって欲しいですねぇ〜
(まだまだ勉強不足ですが)-
-
replied for
まーしー's comment
March 11, 2010 8:18 PM
|
ReplyThis!
「まるっと書き直し版」Dakinyさんと話している事があるので、ホントに出すかもしれない。
まだ、手は付けてないんですけれど・・・-
-
replied for
oscar's comment
March 11, 2010 10:07 PM
|
ReplyThis!
お、そんな話があるんですね!
今度話をきかせてください〜!!
-
-
-
-
-
said
March 11, 2010 7:37 PM
|
ReplyThis!
MTElse in ブロックタグって一般的じゃないんですか。
『45式::雑記』のテンプレートには既に使われてるんで、一年以上前には使ってるんですが
> 「マニアック」な書き方と評されました
良かった、ちゃんと自覚できてる
> プラグインいらないジャン!
その記事、根源にあるのはプラグインに頼らないタグ組みですから、そう思って貰えた事は何よりも嬉しいです。-
-
replied for
4n5's comment
March 11, 2010 7:57 PM
|
ReplyThis!
>MTElse in ブロックタグ
少なくとも、私はyujiroさんの記事まで知らなかった。
こういう部分があるから、面白いんですよね、MTは。結構、モディファイアを適用したいためだけに、SetVarしたり、ApplyModifier使ったりしてたので、この方法はいいなと思いました。
-
-
said
March 12, 2010 3:59 PM
|
ReplyThis!
<mt:Unless> が常に真になるっていうの、いろいろと応用できそうですね

-
-
replied for
NORI's comment
March 12, 2010 5:14 PM
|
ReplyThis!
ええ、NORIさん。便利なコンテナタグ見つけたと思います。
-




スクリプトの読み込みが完了していません。
メールフォーム(Javascriptを使用していません)や、
Twitter経由のCommentでもReplyいたします。ただし返信はブログのコメントとして行う事もあります。