「Movable Type 5 プロフェッショナルガイド」詳細情報

「Movable Type 5 プロフェッショナルガイド」詳細情報

Posted at March 20,2010 3:17 AM
Tag:[Book, MovableType]

Movable Type 5 プロフェッショナルガイド」の詳細情報です。

Movable Type 5 プロフェッショナルガイドMovable Type 5 プロフェッショナルガイド

毎日コミュニケーションズ 2010-03-27

Amazonで詳しく見る
by G-Tools

1.書籍の概略

「Movable Type 5 プロフェッショナルガイド」は、主にコア機能や、コア機能の利用方法の解説を目的としたもので、以前執筆させて頂いた「Movable Type 4.2 パーフェクトガイド」の全面改訂版です。

2.主な変更点

「Movable Type 4.2 パーフェクトガイド」は、Movable Type に関して、私が知っていることを書き下したものでしたが、「Movable Type 5 プロフェッショナルガイド」は、Movable Typeの管理画面操作やテンプレート作成を行なえる方を対象にしており、基本的な解説は省略しました。テンプレートタグリファレンスなども基本情報ということで、掲載を見送りました。

また、前書に掲載していた、「折りたたみ」や「ツリー化」、JavaScriptライブラリを使った画像のポップアップなど、コア機能の説明からややはずれたカスタマイズについても割愛しています。

前述の内容をばっさり落としたあと、前書の内容を流用している部分については、一度読み直し、分かりにくい部分をリライトしました。サンプルコードも、Movable Type 5で動作の再確認を行っています。テンプレートやサブテンプレートに行番号を振った説明は校正が大変なため、すべて見直しています。

「Movable Type 4.2 パーフェクトガイド」では、節の中にちょっとしたTipsを書いてましたが、節に埋もれてしまっている感があったので、そういった内容を節としておこし直している部分もあります。例えば、「7-3 regex_replaceモディファイアとreplaceモディファイア」がそうです。

新たに書き加えた部分は、たとえばカスタマイズであれば、当ブログで「パーフェクトガイド」出版後にエントリーしたものや、あるいはブログで未公開の内容を盛り込み、章構成も見直して、オブジェクト別の章立てに変更しました。

カスタマイズ以外で、新たに章としておこしたものは、

  • Chapter3 テーマ
  • Chapter6 テンプレートタグ
  • Chapter17 検索
  • Chapter19 管理画面
  • Chapter20 プログラム
  • Chapter21 プラグイン
  • Chapter22 インタフェース
  • Chapter23 ツール

などが挙げられます。これだけで約200ページ分が刷新されており、さらにカスタマイズで書き加えたものも併せると、書籍の半分以上は新しい内容になっていると思います。

あと、前書で「字が小さすぎて読みにくい」といった評価もあったので、図や表などは大きくしています。

3.本書の読みどころ

人によって読みたい内容は違うと思うので、「ここがおすすめです」というのはありません。ただ、管理画面・プラグイン・インタフェースは、自分なりに気合いをいれて執筆しました。

「管理画面」は、テンプレートファイルの説明・代替テンプレート、config.yamlによるナビゲーションの変更方法など。先程、「テンプレートタグリファレンスは省略しました」と書きましたが、管理画面用テンプレートタグだけはリファレンスを網羅しています(Chapter6)。

「プラグイン」は、プラグイン定義にconfig.yamlを使う前提でまとめました。そのプラグインの前提として「プログラム」の章があり、Movable Typeのクラス構成やオブジェクトの操作について、ざっくりとまとめています。また、データベースのフィールド追加や、テーブルの追加方法など、カスタムフィールドっぽい感じでカスタマイズする方法も取り上げ、追加したフィールドの検索方法についてもちょっとだけ触れています。前書で書けなかったダイナミックパブリッシングプラグインについても解説しています。

「インタフェース」は要するに、XML-RPC と Atom Publishing Protocolのことです。XML-RPCは、既存機能の洗い出しということで、現時点で実装されている全てのAPIを(多分)網羅しました。Atom Publishing Protocolは、ネットで調べてもほとんど情報がない領域でしたが、ソーストレースして、こう使えばいいんじゃない?くらいのことは書けたと思います。

その他、カスタマイズでも、テンプレートで検索結果画面を作るとか、使い方がよく分からないsort_methodモディファイアを使い倒すとか、探せば色々面白い内容がみつかるかもしれません。

そういうわけで、順を追ってサイトをひとつ作ります、という本ではありません。この本を通じて、ピンポイントで困っていることに対して解決策がみつかるか、直接的な答えがなくても、何らかの手がかりがみつかる、そういう本になってくれれば幸甚の喜びです。

4.ページ数

ページ数は512ページと、前書よりかなり減っていますが、1項に記した通り、ビギナーの方向けの内容や、カスタマイズのポイントを絞り、その分、開発者向け情報を大幅に増やしているので、内容は前書より明らかに濃厚になっています。

ページのレイアウトは、私が書きすぎたこと諸般の事情により、今回もぎゅうぎゅうに詰めてもらい、650~700ページ分くらいの内容になってます。図や表の大きさは前述の通り、校正の段階でできるだけ大きく直しているので、前書よりは(多分)読みやすいと思います。

5.目次

本書の目次です。カッコ内は開始ページなので、節単位でのページ数が大体分かると思います。

Chapter1 プロダクト
  • 1-1 Movable Typeのコードネームとバージョン(18)
  • 1-2 開発コードのビルド(19)
  • 1-3 旧バージョンのMovable Typeを利用する(26)
Chapter2 環境
  • 2-1 アプリケーションディレクトリ(30)
  • 2-2 設定ファイル(33)
  • 2-3 ファイル・ディレクトリのパーミッション(36)
  • 2-4 複数ドメインでの利用(39)
  • 2-5 PHP化(42)
  • 2-6 プラグインディレクトリの独立(45)
  • 2-7 スケジュールタスク(47)
  • 2-8 FastCGI(50)
  • 2-9 複数Movable Typeのインストール(53)
  • 2-10 InstaMT(55)
Chapter3 テーマ
  • 3-1 テーマ関連ファイル(62)
  • 3-2 ローカライズ(82)
  • 3-3 スタイル機能対応(85)
  • 3-4 カラムレイアウトの定義(88)
Chapter4 テンプレート
  • 4-1 「ファイルへのリンク」について(92)
  • 4-2 「テンプレートの種類」について(95)
  • 4-3 アーカイブマッピングの「優先」について(98)
  • 4-4 優先アーカイブタイプ(101)
  • 4-5 サーバーサイドインクルード(103)
  • 4-6 モジュールキャッシング(105)
Chapter5 コンテキスト
  • 5-1 コンテキストの基本(110)
  • 5-2 コンテキストの依存関係(112)
  • 5-3 アーカイブコンテキストを他のコンテキストに変更する(116)
Chapter6 テンプレートタグ
  • 6-1 テンプレートタグのフォーマット(120)
  • 6-2 テンプレートタグの最適化(123)
  • 6-3 変数の初期化(126)
  • 6-4 配列・ハッシュの入れ子(128)
  • 6-5 管理画面用テンプレートタグ(131)
Chapter7 モディファイア
  • 7-1 モディファイアの基本(148)
  • 7-2 mtevalモディファイア(151)
  • 7-3 regex_replaceモディファイアとreplaceモディファイア(154)
  • 7-4 testモディファイア(156)
  • 7-5 appendモディファイアとprependモディファイア(157)
Chapter8 ウェブサイト・ブログ
  • 8-1 ウェブサイト・ブログの指定(162)
  • 8-2 ウェブサイト・ブログでのテンプレートモジュールの共有(166)
  • 8-3 インクルード先の情報を出力する(170)
Chapter9 ブログ記事・ウェブページ
  • 9-1 記事の一覧をタイトルの番号順にソートする(174)
  • 9-2 複数ブログのブログ記事を時間順に1件ずつ表示する(177)
  • 9-3 ブログ記事ページのデザインをカテゴリ別に切り替える(179)
  • 9-4 ウェブページのデザインをウェブページ別に切り替える(182)
Chapter10 コメント・トラックバック
  • 10-1 最近のコメント・トラックバックを記事別に表示する(186)
  • 10-2 コメントをスレッド形式で表示する(191)
  • 10-3 サインイン後のコメント投稿フォームをブラウザの先頭に表示する(194)
  • 10-4 コメント投稿者の表示を実体参照する(196)
  • 10-5 「最近のコメント」をフィードで配信する(197)
Chapter11 アイテム
  • 11-1 アイテムのキャッシュディレクトリ(202)
  • 11-2 記事に挿入したアイテムのサムネイル一覧を表示する(204)
  • 11-3 記事に挿入した画像の表示サイズを制御する(206)
  • 11-4 画像挿入時の(X)HTMLマークアップをカスタマイズする(208)
Chapter12 カテゴリ
  • 12-1 カテゴリによる関連ブログ記事一覧(214)
  • 12-2 カテゴリ一覧にブログ記事タイトルを表示する(216)
  • 12-3 カテゴリアーカイブリストに月別のタイトルを表示する(219)
  • 12-4 親カテゴリ配下のカテゴリのブログ記事一覧を表示する(221)
  • 12-5 カテゴリアーカイブページのカテゴリアーカイブリストに親カテゴリとその子カテゴリを表示する(223)
  • 12-6 カテゴリアーカイブにサブカテゴリのブログ記事を表示する(226)
  • 12-7 カテゴリ一覧のブログ記事数にサブカテゴリのブログ記事数を含めて表示する(230)
  • 12-8 カテゴリの更新履歴を表示する(232)
  • 12-9 カテゴリアーカイブページのデザインをカテゴリ別に切り替える(234)
  • 12-10 カテゴリ別にブログ記事の背景画像を切り替える(237)
  • 12-11 カテゴリ別にフィードを配信する(241)
  • 12-12 sort_methodモディファイアによるカテゴリとフォルダのソート(245)
Chapter13 タグ
  • 13-1 タグによる関連ブログ記事一覧(254)
  • 13-2 タグのプライベートモード(256)
  • 13-3 タグ検索による記事の絞り込み(261)
  • 13-4 タグ検索リンクをロボット型検索エンジンのクロール対象外にする(266)
Chapter14 カレンダー
  • 14-1 複数ブログの情報を1つのカレンダーにまとめて表示する(268)
  • 14-2 Ajax月送りカレンダー(272)
  • 14-3 カテゴリ別月送りカレンダー(278)
  • 14-4 ダイナミック月送りカレンダー(281)
Chapter15 アーカイブ
  • 15-1 月別アーカイブリストに年別の見出しを表示する(286)
  • 15-2 アーカイブページへの「続きを読む」のリンクを表示する(292)
  • 15-3 アーカイブページへのリンクを相対パスで表示する(296)
  • 15-4 サイトマップを作る(207)
Chapter16 カスタムフィールド
  • 16-1 カスタムフィールドでおすすめ度順にソートする(302)
  • 16-2 カスタムフィールドの複数行を改行表示する(308)
  • 16-3 コミュニティのカスタムフィールドの表示順序を並べ替える(311)
Chapter17 検索
  • 17-1 検索方法と検索オプション(314)
  • 17-2 検索対象のフィールドを変更する(317)
  • 17-3 検索結果のページ分割をカスタマイズする(319)
  • 17-4 旧バージョンの検索機能を利用する(322)
  • 17-5 テンプレートでカスタムフィールド検索のページを作る(324)
Chapter18 再構築
  • 18-1 スタティックパブリッシング(332)
  • 18-2 ダイナミックパブリッシング(337)
Chapter19 管理画面
  • 19-1 テンプレートファイル(344)
  • 19-2 代替テンプレート(348)
  • 19-3 テンプレートファイルでテンプレートタグを利用する(351)
  • 19-4 ナビゲーションのカスタマイズ(353)
  • 19-5 パーミッションのカスタマイズ(359)
Chapter20 プログラム
  • 20-1 クラス(364)
  • 20-2 オブジェクト(366)
  • 20-3 ローカライズ(376)
  • 20-4 予約変数・特殊変数(378)
  • 20-5 レジストリ(381)
  • 20-6 管理アプリケーションのリクエスト処理(383)
  • 20-7 アプリケーションモードとハンドラの対応(394)
Chapter21 プラグイン
  • 21-1 プラグインの概要(398)
  • 21-2 プラグインデータ(402)
  • 21-3 拡張テンプレートタグ(405)
  • 21-4 コールバック(412)
  • 21-5 フィールドの拡張とオブジェクトテーブルの追加(419)
  • 21-6 管理アプリケーションプラグイン(425)
  • 21-7 アプリケーションの実装(451)
  • 21-8 ダイナミックパブリッシングプラグイン(456)
  • 21-9 ローカライズ(461)
  • 21-10 プラグインの削除(463)
  • 21-11 デバグ(465)
Chapter22 インタフェース
  • 22-1 RSD(470)
  • 22-2 XML-RPC(472)
  • 22-3 Atom Publishing Protocol(485)
Chapter23 ツール
  • 23-1 list-objects(494)
  • 23-2 mt-tmpl-test(496)
  • 23-3 permission-viewer(499)
  • 23-4 plugin-config(502)
  • 23-5 pl-viewer(503)
  • 23-6 remove_old_sessions(505)

6.その他

短期間での勝負となったため、誤記や理解しにくい文章をできるだけ減らすことを目的に、急遽、校正担当を2名お願いしました。校正を行なって頂いたお二人に、この場をお借りして心よりお礼申し上げます。

関連記事
zenback
人気エントリー
トラックバックURL


トラックバック

Movable Type 5 プロフェッショナルガイド from Technology on Information
小粋空間の yujiro こと荒木勇次郎さんの執筆された「Movable T... [続きを読む]

Tracked on April 5, 2010 6:45 PM
コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)