カテゴリー

最新の記事

最近のコメント

最近のトラックバック

月別アーカイブ

ブログ検索

RSSフィード

ブロとも申請フォーム

この人とブロともになる

スポンサーサイト

スポンサー広告
--.--.--
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ベンチャーブログのランキングに参加しています。
下のバナーをクリックして応援していただけると嬉しいです。
にほんブログ村 ベンチャーブログへ

TypePadと格闘中・・・

PCとかネットとか
2007.08.15
いま、ある会社に「週刊の情報提供サイトを作る」という提案をしていて
そのベースとなるシステムとしてTypePadを選択し、
基本テンプレートの構築のために格闘しています。

最初はMovable Typeをレンタルサーバーに導入しようかと思っていたのですが
ちょうどMovable Typeがバージョンアップしてしまい
旧バージョンへのアクセスがクローズしちゃったんです。
新バージョンの導入は慎重に行え、というのは
システムコンサルタント時代からの私の基本スタンスなので
Movable Typeの旧バージョンが入手できないのなら、
他の方法を探した方がよさそうだと考え直したのです。

で、サーバー構築も手間がかかるし、
もしASP型のサービスが使えるのならそちらの方がいいかなと考えて、
Movable TypeのASP版ともいえるTypePadの利用を開始したというわけです。


ASP型のサービスなので、確かにシステム構築やメンテの手間はないのですが
テンプレートのカスタマイズが、思ったほど一筋縄ではいきません。
この3日ばかり「あーでもない」「こーでもない」と
テスト用のテンプレートをいじりまくっていたのですが
ようやくTypePadの世界が、わかりつつあるところです。

まずTypePadでテンプレートを作成する場合、
最初にウィザードのような形でテーマやレイアウトを選び
さらに対話型のメニューでカスタマイズしていくわけですが
当然ながらこのレベルでは、十分な自由度を得られません。
そこで行うのが「上級テンプレートへ変換」です。
こうすると、インデックステンプレートとアーカイブテンプレートに
直接手を入れられるようになるわけですよ。

ここまでは、まあ難しくありません。
でもここから、カスタマイズの迷い道へと、彷徨いこんでしまうのです・・・


カスタマイズの迷い道~その1
インクルードの罠


「さあ、ばっちりカスタマイズしてやるぜ!」と意気込んで
テンプレートのソースコードを見ると、すぐに壁にぶつかったことに気がつきます。
テンプレートの中身はインクルードタグの嵐なのですが
インクルードされているモジュールがどこにあるのかわからない。
しかもインクルードタグは「MTWeblogIncludeModule」というもので
MovableTypeのタグ辞典にも載っていない。
これではカスタマイズなんてできるわけがない。

そこでいろいろと探した結果、見つけたのが以下のサイト。

http://support.typepad.jp/cgi-bin/typepad_jp.cfg/php/enduser/popup_adp.php?p_sid=undefined&p_lva=undefined&p_li=undefined&p_faqid=377&p_created=1145443768&p_sp=undefined

ここはTypePadのサポートページなのですが、ここの記述によれば

 1.カスタマイズしたいテンプレートモジュールを自分で作成する。
 2.カスタマイズしたモジュールを使うには、インクルードタグの記述を
    MTWeblogIncludeModule → MTInclude
   に変更する。

といった作業が必要ということ。
テンプレートモジュールのプロトタイプも用意されていました。

さっそくこれらをコピー&ペーストして、テンプレートモジュールを作成していきます。
テンプレートの中のインクルードタグの記述も変更して、ブログを再構築!
そうしたら、いきなりエラーですよ。とほほ・・・

どの部分でエラーが出ているのかは表示されないので
テンプレートの中身をじっくり見ながら、シラミ潰しにバグを探します。
結局、存在しないテンプレートモジュールをインクルードするという
実に基本的なケアレスミスが見つかって、ブログの再構築が成功。
これでようやく、カスタマイズのための基本的な環境ができたわけです。


カスタマイズの迷い道~その2
TypePadでは使えないタグの罠


ここまでくれば、あとはテンプレートモジュールをいじり倒すのみ!
・・・でもまたここで、罠にはまってしまいます。
TypePadはMovable Type互換という点が最大の魅力なのですが
実はTypePadではサポートされていないタグがあるのです。

それがわかったのは、エントリーのカテゴリー名を表示させようとしたときでした。
エントリータイトルのショルダーに、カテゴリー名を一緒に表示させると
連載記事のタイトル表記がわかりやすくなるなあ、と思ったんです。
で、さっそく <$MTEntryCategory$> を記述したのですが、これがうまく動かない。

「え~、どうして~?」といったキモチで、いろいろと検索してみると
以下のサイトが見つかりました。

http://watcher.moe-nifty.com/memo/dist/mtTemplateTags.html

このサイトはMovable TypeとTypePadのテンプレートタグを比較しているのですが
MTEntryCategory はTypePadには存在しない! 撃沈です。

「なぜだ~!」と叫びたいキモチを抑えて、逃げ道を探すことに。結局、

<MTEntryCategories>
<$MTCategoryLabel$>
</MTEntryCategories>


と記述することで、目的を達することができました。

他にも使えないタグは結構あるので、慎重さが必要です。


カスタマイズの迷い道~その3
タグがあってもアトリビュートが使えない?


TypePadでサポートされているタグでも、それだけで安心してはいけないみたいです。
なんと、タグはあるのに、アトリビュートが使えないケースがあったからです。

私が遭遇したのは、

<$MTCategoryLabel remove_html="1"$>


がうまく機能しないという現象でした。
カテゴリーの表示順をコントロールするため
カテゴリー名のアタマに<001>のような数字をつけて管理したかったのです。
先ほどのタグを使うと、<>で囲まれた部分が表示されなくなるので
管理用の数字を読者に見せることなく、表示順のコントロールが可能になるわけです。
Movable Typeでは常套手段みたいですね。

でも実際にやってみると、<>で囲まれた部分が消えてくれない。
これはちょっとショック。
PHPのスクリプトでアタマの文字をはずす方法も試しましたが
これも機能しないみたいです。
他にスマートな方法が思いつかないので、
このままでは力業に逃げるしかなさそうです。
誰かスマートな方法を教えてくださると嬉しいです・・・。

それでも、かなりのカスタマイズができそうなので、それなりに満足です。
お昼頃に管理サイトのレスポンスが悪くなるのは、ちょっと困りものなのですが・・・
スポンサーサイト

ベンチャーブログのランキングに参加しています。
下のバナーをクリックして応援していただけると嬉しいです。
にほんブログ村 ベンチャーブログへ

FC2Ad

相続 会社設立

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。