ブログ自由自在 Movable Type 上級カスタマイズ術

[表紙]ブログ自由自在 Movable Type 上級カスタマイズ術

B5変形判/360ページ

定価(本体2,880円+税)

ISBN 4-7741-2379-X

ただいま弊社在庫はございません。

→学校・法人一括購入ご検討の皆様へ

書籍の概要

この本の概要

Movable Typeを使っていると「画像表示を自動化したい」など「痒いところに手が届かない」という感じを受ける場面が結構ある。本書では,1からテンプレートを作成したり,プラグインを作成する方法などを実践的に解説し,よりオリジナリティのあるブログの作成を目的とする。

こんな方におすすめ

  • MTでブログ作成している人
  • MT初心者を脱して、より個性的で便利なブログを作りたい中上級者

目次

本書の読み方

Part1 オリジナルのテンプレートを作ろう

  • テンプレートの概要とテンプレート編集メニューの基本操作
    • ・テンプレートとは?
    • ・テンプレートの種類
    • ・テンプレート編集メニューの基本操作
  • 初めてのテンプレート
    • ・テンプレートを入力する
    • ・テンプレートの内容
  • エントリーを一覧表示する
    • ・メインページにエントリーを一覧表示する
    • ・エントリーを繰り返し出力する:MTEntriesタグ
    • ・エントリーの内容を表示する
    • ・日付の書式を変える
    • ・日付アーカイブページへのリンクを設定する
  • Blogを3カラム化する
    • ・3カラム化するための手順
    • ・divタグで4つのブロックに分割する
    • ・スタイルシートで各ブロックのサイズなどを指定する
    • ・サイトの再構築と結果の確認
  • サイドバーにカレンダーを表示する
    • ・カレンダーを表示する部分を入れる
    • ・カレンダー表示部分の内容
  • 月別アーカイブページへのリンクを表示する
    • ・アーカイブ関連のテンプレートタグ
    • ・月別アーカイブページの一覧を出力する例
  • エントリーのカテゴリーの情報を表示する
    • ・個々のエントリーにカテゴリーを表示する:MTEntryCategoryタグ
    • ・カテゴリーアーカイブページへのリンクを設定する
    • ・カテゴリー名を表示するサンプル
  • サイドバーにカテゴリー一覧を表示する
    • ・カテゴリー一覧を出力する
    • ・各カテゴリーの最新エントリーの日付を表示する
    • ・カテゴリーの階層をツリー状に表示する
    • ・MTSubCategoriesタグなどを使った例
    • ・カテゴリーの表示順序の問題
  • コメントの情報を表示する
    • ・個々のエントリーにコメントの数を表示する
    • ・最新のコメントを一覧表示する
    • ・最新のコメントの一覧をエントリーごとにまとめて表示する
  • トラックバックの情報を表示する
    • ・エントリーごとのトラックバック数を表示する
    • ・サイドバーに最近のトラックバックを一覧表示する
    • ・トラックバック関係のタグの問題点

Part2 各種テンプレートの作り方71

  • カテゴリーアーカイブテンプレート/日付アーカイブテンプレートの作成
    • ・カテゴリーアーカイブテンプレート/日付アーカイブテンプレートの概要
    • ・アーカイブテンプレートの編集と再構築
    • ・カテゴリーアーカイブ/日付アーカイブ共通の変更点
    • ・カテゴリーアーカイブテンプレートの変更点
    • ・日付アーカイブテンプレートの変更点
  • 個別アーカイブテンプレートの作成
    • ・個別アーカイブページに表示する内容
    • ・個別アーカイブテンプレートの編集と再構築
    • ・エントリーの内容を出力する
    • ・トラックバックのURLを出力する
    • ・トラックバックの一覧を出力する
    • ・コメントの一覧を表示する
    • ・コメント入力フォームを表示する
    • ・その他の変更点
  • 特別なテンプレート
    • ・特別なテンプレートの概要
    • ・特別なテンプレートの編集
    • ・コメント・プレビューのテンプレート
    • ・コメント・エラーのテンプレート
    • ・コメント・保留のテンプレート
  • 検索機能の追加と検索結果テンプレートの編集
    • ・検索機能をつける
    • ・検索結果テンプレートの作成とアップロード
    • ・設定ファイルの更新
    • ・検索フォームの変更
    • ・検索結果テンプレートで使うテンプレートタグ
    • ・検索結果テンプレートの例
  • テンプレート・モジュールの作成と利用
    • ・テンプレート・モジュールとは?
    • ・テンプレート・モジュールの作成
    • ・テンプレート・モジュールをテンプレートに組み込む
    • ・モジュール化の例

Part3 スタイルシートでBlogをデザインする

  • スタイルシートの基本
    • ・スタイルシートとは?
    • ・Movable Typeとスタイルシート
    • ・スタイルシートの基本的な書き方
    • ・スタイルシートを入れる位置
    • ・IDとクラスで書式の適用先を限定する
    • ・タグ/ID/クラスの対応関係を指定する
    • ・リンクの表示方法の設定
  • 主要なプロパティ
    • ・文字関係のプロパティ
    • ・背景関係のプロパティ
    • ・ボーダー(枠線)に関するプロパティ
    • ・余白に関するプロパティ
    • ・レイアウトに関するプロパティ
    •  《COLUMN》widthプロパティの解釈の違い
  • スタイルシートの内容を知る
    • ・Webページ全体の余白と背景色の設定
    • ・Webページのレイアウト
    • ・各ブロックの書式の設定
    • ・バナーの書式の設定
    • ・カレンダーの書式の設定
    • ・箇条書きの書式の設定
    • ・コメントエラーの書式の設定
  • スタイルシートをカスタマイズする
    • ・背景に画像を入れる
    • ・背景の色を変える
    • ・バナーの文字の色と大きさを変える
    • ・見出しの文字の書式を変える
    • ・段落と箇条書きの文字を変える
    • ・カレンダーの書式を変える
    • ・余白の調整
    • ・個別アーカイブページのコメント/トラックバック一覧の表示を整える

Part4 Movable TypeをPerlのプログラムで操作する

  • Movable Typeのプログラミングの基本
    • ・Movable TypeとPerlの関係
    • ・Movable Typeのオブジェクト
    • ・サンプルプログラムの実行方法
    • ・Movable Typeでの初めてのプログラム
  • Movable Typeのオブジェクト操作の流れとBlog全体のデータの参照
    • ・クラスを使うことを宣言する
    • ・オブジェクトを読み込む
    • ・Blogの情報を得る
    • ・Blogの情報を一覧表示する
  • エントリーを操作する一一MT::Entryクラス
    • ・1つのエントリーをMT::Entryクラスのオブジェクトに割り当てる
    • ・複数のエントリーを読み込む
    • ・エントリーの内容を操作する
    • ・エントリー操作の例:各エントリーのバイト数を表示する
  • カテゴリーの情報を操作する一一MT::Categoryクラス
    • ・カテゴリーの一覧を得る
    • ・カテゴリーの情報を得る
    • ・カテゴリーの階層関係を得る
    • ・エントリーからカテゴリーの情報を得る
    • ・カテゴリーに属するエントリーをすべて読み込む
    • ・MT::Categoryクラスを使う例
  • コメントを操作する一一MT::Commentクラス
    • ・すべてのコメントを読み込む
    • ・コメントの情報を操作する
    • ・コメント先のエントリーを読み込む
    • ・エントリーについたコメントを読み込む
    • ・MT::Commentクラスを使った例
  • トラックバックを操作する一一MT::TBPingクラス/MT::Trackbackクラス
    • ・すべてのトラックバックを読み込む
    • ・トラックバックの情報を操作する
    • ・トラックバックが送信されたエントリーを調べる
    • ・エントリーに送信されたトラックバックを得る
    • ・MT::TBPing/MT::Trackbackクラスを使う例
  • オブジェクトの各種の操作
    • ・オブジェクトを1つずつ読み込む
    • ・オブジェクトの新規作成
    • ・オブジェクトの内容の変更
    • ・オブジェクトの保存
    • ・オブジェクトの削除
    • ・オブジェクトの個数を数える
    • ・Blogの再構築
  • 各種の処理を行う関数
    • ・MT::Utilライブラリの関数
    • ・MT::I18Nライブラリの関数
  • テンプレートをCGIとして出力する
    • ・テンプレートの拡張子を「.cgi」にする
    • ・出力ファイルのパーミッションを変更する
    • ・テンプレートにCGIのプログラムを入れる
    • ・CGIの中でテンプレートタグを使う
    • ・テンプレートをCGIにする事例
  • 事例:コメントとトラックバックのランキングを表示する
    • ・ランキング(ranking.cgi)の使い方
    • ・ranking.cgiのプログラムの内容
    •  《COLUMN》コメント数/トラックバック数でランキングするプラグイン

Part5 プラグインを作成する

  • プラグインの利用方法
    • ・プラグインの入手方法
    • ・プラグインのインストール
    • ・プラグインの利用
  • グローバル・フィルターの作成
    • ・グローバル・フィルターの概要
    • ・グローバル・フィルターの例:カテゴリーの並べ替えに役立つcutfirstcharプラグイン
    • ・グローバル・フィルターの作り方
  • 変数タグの作成8
    • ・変数タグの例:エントリーに情報を埋め込むMTEntryFieldプラグイン
    • ・MTEntryFieldプラグインの内容と変数タグの作り方
  • コンテナタグの作成
    • ・コンテナタグの例:最近トラックバックがあったエントリーを出力する
    • ・プラグインの初期化の処理
    • ・コンテナタグの追加
    • ・システムからのパラメータを受け取る
    • ・情報を出力するための準備
    • ・一連の情報を出力する
    • ・トラックバック先のエントリーを得るプラグイン
  • 条件タグの作成
    • ・条件タグの例:情報が埋め込まれているときだけ取り出す
    • ・条件タグのプラグインの作り方
  • テンプレートの種類によって処理を分ける
    • ・事例:カテゴリー/アーカイブごとのコメント/トラックバック数を表示する
    • ・テンプレートの種類を得る
    • ・処理対象を得る
    • ・Counter.plの中身
  • コールバックのプラグインを作成する
    • ・事例:エントリーの作成時刻を保存する際の時刻に自動的に変更する
    • ・プラグインの初期化
    • ・コールバックの追加
    • ・Movable Typeからのパラメータを得る
    • ・プラグインの処理
  • プラグインのデバッグ
    • ・文法エラーの確認
    • ・プラグインの動作状況をログに記録する
    •  《COLUMN》筆者のBlogのご紹介

Part6 BlogのPHP化とダイナミック・パブリッシング

  • Movable TypeとPHPの関係
    • ・PHPとは?
    • ・Movable TypeとPHPの関係
    • ・PHP化に必要な条件
  • BlogをPHP化する
    • ・PHP化の前に
    • ・テンプレートの出力をPHPファイルにする
    • ・〜.htmlへのアクセスを〜.phpへリダイレクトする
  • テンプレートにPHPのプログラムを入れる
    • ・最新のエントリーにNewマークをつける
    • ・PHPのプログラムをテンプレートに入れる方法
  • PHPで再構築を軽量化する
    • ・共通する部分を1つにまとめるメリット
    • ・カレンダーを部品化する
    • ・テンプレートを書き換える
    • ・その他の部分の共通化
  • ダイナミック ・パブリッシングの導入
    • ・ダイナミック ・パブリッシングの概要
    • ・ダイナミック ・パブリッシングのメリット
    • ・ダイナミック ・パブリッシングのデメリット
    • ・ダイナミック ・パブリッシングの導入手順
  • PHPプラグインの利用と作成1 一一グローバル・フィルター
    • ・事例:cutfirstcharプラグインのPHPプラグイン化
    • ・グローバル ・フィルターの作成
  • PHPプラグインの利用と作成2 一一変数タグ
    • ・事例:MTEntryFieldプラグインのPHP化
    • ・変数タグの作り方
  • PHPプラグインの利用と作成3 一一コンテナタグ
    • ・事例:MTEntriesRecentlyPingedプラグインのPHP化
    • ・Perlのプラグインとの違い
    • ・コンテナタグのプラグインの枠組み
    • ・MTEntriesRecentlyPingedプラグインの先頭部分
    • ・出力する情報を用意する
    • ・情報を出力する
  • PHPプラグインの利用と作成4 一一条件タグ
    • ・事例:最新のエントリーにNewマークをつける
    • ・条件タグの枠組み
    • ・MTTagDateIfNewプラグインの内容
    •  《COLUMN》Movable TypeのPHPライブラリを参考にする

Part7 Movable Typeでこんなこともできる

  • Movable TypeはCMSである
    • ・Movable Typeは「同じテーマの多数のコンテンツ」を管理するCMS
    • ・Movable TypeをCMSとして使うメリット
    • ・筆者のサイトでもMovable Typeを活用
  • 本のようなコンテンツをMovable Typeで管理する
    • ・作業の大まかな流れ
    • ・本に対応するBlogを新規作成する
    • ・章や節をカテゴリーに対応させる
    • ・項に対応するエントリーを作る
    • ・個別アーカイブテンプレートの作成
    • ・メインページ(index.html)のテンプレートの作成
    • ・スタイルシートの作成
  • Movable Typeでスケジュール表を作る
    • ・作成するスケジュール表の例
    • ・スケジュール表作成の概要
    • ・データの管理方法
    • ・日付アーカイブテンプレートの作成
    • ・スタイルシートの作成
    • ・その他のテンプレート
  • 画像入りBlogを作りやすくする
    • ・画像のアップロード機能はあるが‥‥
    • ・画像のレイアウトをテンプレートで自動化する
    • ・MTEntryRecordsプラグインのインストール
    • ・画像をアップロードする
    • ・エントリーに写真の情報を埋め込む
    • ・メインページのテンプレートの作成
    • ・その他のテンプレートを作る
    • ・MTEntryRecordsプラグインの活用
    •  《COLUMN》画像のアップロード先ディレクトリの初期値を変える

付録

  • 付録1 Movable Typeのインストール
    • ・Movable Typeの入手
    • ・Movable Typeをインストールする
    • ・MySQLを使えるようにする
    • ・Movable Type全体の初期化
    • ・Blogの初期設定344
  • 付録2 テンプレートタグリファレンス
    • ・Blog全般のデータを出力するテンプレートタグ
    • ・エントリー関連のテンプレートタグ
    • ・カレンダー関連のテンプレートタグ
    • ・カテゴリー関連のテンプレートタグ
    • ・コメント関連のテンプレートタグ
    • ・トラックバック関連のテンプレートタグ
    • ・その他のタグ
    • ・タグ・アトリビュート

索引

著者プロフィール

藤本壱(ふじもとはじめ)

1969年兵庫県伊丹市生まれ。神戸大学工学部電子工学科を卒業後,パッケージソフトメーカーの開発職を経て,現在ではパソコンおよびマネー関連のフリーライターや,ファイナンシャルプランナー(CFP(R)認定者)などとして活動している。

ホームページ
URLhttp://www.1-fuji.com

Blog
URLhttp://www.h-fj.com/blog

著書