高級な
Konjak プラグイン
Movable Type のサイトを翻訳する「Konjak プラグイン」を紹介します。
このプラグインは、Google または Bing の翻訳エンジンを利用して、ブログ記事などを翻訳し、ページを生成します。
1.プラグインのダウンロード
Konjak プラグインの配布サイトより、プラグインをダウンロードします。
2.プラグインのインストール
ダウンロードしたアーカイブを展開し、中にあるKonjakディレクトリをpluginsディレクトリにアップロードします。
管理画面にアクセスすると、アップグレードが開始します。
ログインするとアップグレードを実行します。
3.プラグインの設定
ブログ別のプラグイン画面で利用する翻訳エンジンを設定します。
4.テンプレートの設定
翻訳したい場所に、次のテンプレートまたはモディファイアを設定します。
ブロックタグの場合
<mt:TranslateText language="en">
<$mt:EntryBody$>
</mt:TranslateText>
モディファイアの場合
<$mt:EntryBody translate_language="en"$>
languageモディファイア、またはtranslate_languageに、翻訳後の言語を指定します。
翻訳したページは、次のようになります。
翻訳結果はキャッシュに保存されます。キャッシュをクリアしたい場合はプラグイン設定画面の「翻訳キャッシュの全削除」をクリックします。
WordPress テーマのカラムレイアウトを変更する
配布中の WordPress テーマのカラムレイアウトを変更する方法です。
以前、「WordPress テーマ修正(フッタ付きリキッドレイアウト対応)」で変更方法はお知らせしていたのですが、記事が埋もれてしまっている(というか、リンクの張り忘れです)ので、カラムレイアウトの変更方法のみ改めて紹介しておきます。
WordPress テーマは、次のリンクからダウンロードしてください。
1.カラムレイアウトの変更方法
テーマを入れ替えたあと、テーマエディタで「ヘッダー(header.php)」を選択し、下記の赤色部分を変更するだけです。
…前略…
<?php /* <body class="<?php if(is_home()) { ?>layout-two-column-right<?php } else if(is_single()) { ?>layout-one-column<?php } else { ?>layout-two-column-right<?php } ?>"> */ ?>
<?php global $layout; $layout = 'layout-three-column'; ?>
<body class="<?php echo($layout); ?>">
<div id="box" class="clearfix">
…後略…
2.設定値
設定値は次の通りです。
- 3カラム固定(左右サイドバー):layout-three-column
- 3カラムリキッド(左右サイドバー):layout-three-column-liquid
- 3カラムリキッド(右サイドバー):layout-three-column-liquid-right
- 2カラム固定(左サイドバー):layout-two-column-left
- 2カラム固定(右サイドバー):layout-two-column-right
- 2カラムリキッド(右サイドバー):layout-two-column-liquid-right
- 1カラム固定:layout-one-column
- 1カラムリキッド:layout-one-column-liquid
どのような感じになるかは、「WordPress テーマ修正(フッタ付きリキッドレイアウト対応)」をご覧ください。
Movable Type 5(MT5)の FastCGI 環境で管理画面の URL が変更されない事象について
Category:[トラブルシューティング]
Tag:[FastCGI, MovableType, TroubleShooting]
Permalink
Movable Type 5(MT5)で FastCGI を利用したことがなかったので、Movable Type 4 のときに利用していた FastCGI の環境のまま利用して試してみました。
試してみたところ、管理画面のURI のCGIファイルを mt.fcgi に変更してアクセスしてもアクセス後の管理画面にある他の管理画面へのリンクのURLの末尾がmt.fcgiではなく、mt.cgiのままになる事象が発生しました。
ちなみに、mt-config.cgi には、次の設定を行っています。
AdminScript mt.fcgi
キャッシュをクリアしても事象は変わりません。
そのうち、異なる画面にmt.fcgiでアクセスしていると、mt.cgiでアクセスする画面と、mt.fcgiでアクセスできる画面が混在しました。再構築画面のURLもアーカイブごとにmt.cgiとmt.fcgiが切り替わる事象が発生しました。
最後は、一旦サインアウトして、再度サインインすることで、すべての画面が mt.fcgi でアクセスできるようになりました(Movable Type 4 ではログアウトしなくても自動的に切り替わってた気が)。
環境は次のとおりです。
- Windows Vista SP1
- Perl 5.8.8
- Apache/2.2.8
- FastCGI mod_fastcgi-2.4.6-AP22.dll
- Movable Type 5.01
PC環境の問題かもしれませんのであしからず。
Movable Type 5 Web サイト制作ガイド Volume 1
この書籍は、著書の藤本壱さんが配布する PDF 本の第3弾で、まだ世に出回っている数が少ない、Movable Type 5 のカスタマイズ本です。

書籍の内容は、インストール・基本操作から、Movable Type 5 で追加されたウェブサイトやブログのテンプレートの作り方やカスタマイズなど、サイト制作に役立つと思われる実用的なノウハウが満載です。書籍内で紹介しているソースコードのサンプルもダウンロードできます。
約430ページで2500円ですが、ご自身のブログで書籍の紹介などを行なえば、最大で500円割引で購入する特典もあるので、かなりお買い得です。
目次をクリックすれば、目的のページに素早く移動できるのもPDFの強みです。また、紙媒体に印刷したときに綴じやすいよう、PDFは3種類セットで用意されています。
詳しくは「Movable Type 5 Web サイト制作ガイド Volume 1」をご覧ください。
以下、目次です。
第1章 Movable Type 5の概要とインストール
- Movable Type 5の概要
- Webサイト全体を管理するCMS
- 「ウェブサイト」機能でWebサイトを管理
- ウェブサイトに「ブログ」を入れることもできる
- ウェブサイト/ブログ間の連携
- 強力なテンプレートタグ
- 「テーマ」でサイトのデザインを変えられる
- カスタムフィールドでウェブページ等にさまざまなデータを追加
- リビジョン(履歴)管理機能
- 商用ライセンスとオープンソース版
- テスト用環境を用意する
- 自分のパソコンでMovable Type 5の動作を試す
- テキストエディタを用意する
- パソコンの設定等
- Movable Type 5をレンタルサーバーにインストールする
- Movable Type 5の入手
- Zipファイルの解凍
- Movable Type 5のアップロード
- パーミッションの変更
- データベースの作成
- 動作環境のチェック
- インストールを始める
- システムチェック
- データベースの設定
- メール設定
- 構成ファイルの保存
- アカウントの作成
- ウェブサイトの作成
- インストールの完了
- ローカル環境の作成(Windows)
- XAMPP for Windowsの概要
- XAMPP for Windowsのダウンロード
- XAMPP for Windowsのインストール
- XAMPP for Windowsのコントロールパネルを起動する
- XAMPP for Windowsの動作確認
- MySQLにパスワードを設定する
- ActivePerlのインストール
- DBD::mysqlモジュールのインストール
- Movbale Type 5のインストール
- ローカルサーバーの作成(MacOS X)
- MacOS X 10.6(Snow Leopard)での制限
- Xcodeのインストール
- XAMPP for MacOS Xのインストール
- DBD::mysqlモジュールのインストール
- ImageMagickのインストール
- XAMPP for MacOS Xの起動
- XAMPP for MacOS Xの動作確認
- XAMPP for MacOS Xが自動で起動するようにする
- セキュリティの設定を行う
- phpMyAdminの設定の書き換え
- Movable Type 5のインストール
- 旧バージョンからのアップグレード
- アップグレード前の注意
- 既存環境のバックアップ
- データベースの変換
- 既存のMovable Type環境のディレクトリ名を変更
- Movable Type 5のアップロード
- 環境設定ファイルの作成
- 環境設定ファイルの書き換え
- アップグレードウィザードの実行
- ウェブサイトの自動作成
- プラグインのインストール
第2章 Movable Type 5の基本操作
- 管理画面の基本操作
- Movable Type 5へのサインイン
- ウェブサイトのダッシュボードに移動する
- メニューの操作
- ウェブサイトの再構築
- ウェブページの作成
- ウェブページの作成
- 既存のウェブページの編集
- ウェブページの削除
- フォルダの作成と利用
- フォルダの作成
- ウェブページをフォルダに分類する
- アイテムのアップロード先の管理にも使える
- ブログの作成
- ブログの新規作成
- 作成済みのブログの操作
- ブログの設定
- ブログ記事の作成と編集
- ブログ記事の新規作成
- 既存のブログ記事の編集と削除
- カテゴリの利用
- カテゴリの作成
- ブログ記事をカテゴリに分類する
- カテゴリの並び順
- ブログ内のウェブページの操作
- ウェブサイトのウェブページとの使い分け
- ウェブサイトのウェブページと同じ使い方
- フォルダの管理
- コメントの管理
- コメントの投稿
- コメントへの返信
- コメントの管理
- コメントの認証の設定
- トラックバックの管理
- トラックバックの受信を許可する
- トラックバックの管理
- トラックバックの即時公開
- ウェブサイト/ブログの再構築
- 再構築のメリットとデメリット
- 再構築が起こるタイミングと再構築の対象
- 手動で再構築を行う
- ウェブサイト/ブログにまたがる再構築は設定が必要
- テーマとスタイルキャッチャーの利用
- テーマを入れ替える
- スタイルキャッチャーでスタイルシートを入れ替える
- テーマのインストール
- テーマのエクスポート(書き出し)
- リビジョン(履歴)管理機能を使う
- リビジョン管理機能の概要
- ブログ記事/ウェブページにリビジョンの情報を入れる
- 過去のリビジョンに戻す
- リビジョンの保存数を設定する
- 複数のユーザーでウェブサイト/ブログを管理する
- ユーザーと権限について
- ユーザーの管理
- ユーザーにロールを設定する
- ロールの作成
- 複数のウェブサイトの管理
- ウェブサイトの新規作成
- ウェブサイトの設定
- バックアップと復元
- バックアップの手順
- 復元の手順
- 復元時の注意
第3章 ウェブサイトのテンプレートを作る
- テンプレートの概要
- テンプレートとは?
- テンプレートの種類
- 初めてのテンプレート作り
- ウェブサイトの各ページの構造を決める
- 「ベースウェブサイト」テーマのアップロード
- インデックステンプレートの編集
- テンプレートにテンプレートタグを入れる
- この節で行うこと
- テンプレートタグについて
- ウェブサイトの情報を出力するテンプレートタグ
- メインページのインデックステンプレートを書き換える
- メインページにウェブページのタイトルを一覧表示する
- この節で取り上げる例
- ウェブページの一覧を出力する---MTPagesタグ
- サイドバーにウェブページの一覧を出力する
- 出力する件数を指定する
- ウェブページ一覧をフォルダに分けて表示する
- この節で行うこと
- フォルダの一覧を出力する---MTFoldersタグ
- MTFoldersタグとMTPagesタグを組み合わせる
- フォルダに属さないウェブページを出力する
- フォルダ毎のウェブページ一覧を出力する
- 個々のウェブページを出力するテンプレートを作る
- この節で行うこと
- 個々のウェブページを出力する手順
- ウェブページアーカイブテンプレートの作成
- メインページのテンプレートをコピーしてウェブページテンプレートに貼り付ける
- テンプレートを書き換える
- アーカイブマッピングの設定
- テンプレートの保存とウェブサイトの再構築
第4章 ブログのテンプレートを作る
- ブログのテンプレート作りの第一歩
- ウェブサイトのテンプレートとよく似た構造
- ベースブログテーマのインストール
- ブログのテンプレートの編集
- メインページの骨組みを作る
- ウェブサイトのメインページのテーマをコピーする
- テンプレートタグを置き換える
- ブログ記事の一覧を表示する
- この節で行うこと
- ブログ記事を繰り返し出力する---MTEntriesタグ
- ブログ記事の内容を出力する
- 日付の書式を変える
- メインページのテンプレートを書き換える
- ブログ記事一覧のページ分割について
- ブログ記事毎にカテゴリの情報を表示する
- ブログ記事の主カテゴリを表示する---MTEntryCategoryタグ
- ブログ記事が属するカテゴリをすべて出力する---MTEntryCategoriesタグ
- ブログ記事に付けたタグの情報を出力する
- この節で行うこと
- ブログ記事につけたタグを出力する---MTEntryTagsタグ
- タグが付いているときだけ処理を行う---MTEntryIfTaggedタグ
- メインページのテンプレートを書き換える
- サイドバーにカテゴリ一覧を表示する
- この節で行うこと
- カテゴリの階層をツリー状に出力する
- カテゴリごとにブログ記事のある/なしで処理を分ける
- メインページのテンプレートを書き換える
- カテゴリの表示順序の問題
- MTCategoriesタグ
- 月別アーカイブページへのリンクを表示する
- この節で行うこと
- アーカイブ関連のテンプレートタグ
- 月別アーカイブページの一覧を出力する例
- カレンダーを表示する
- この節で取り上げる例
- カレンダーを出力するテンプレートタグ
- メインページのテンプレートにカレンダーを追加する
- カテゴリ/月別アーカイブテンプレートの作成
- この節で行うこと
- メインページのテンプレートを流用する
- MTEntriesタグの動作の違い
- アーカイブテンプレートで使えるテンプレートタグ
- カテゴリアーカイブのテンプレートの作成
- 月別アーカイブのテンプレートの作成
- アーカイブマッピングの設定
- アーカイブページのページ分割について
- ブログ記事アーカイブテンプレートの作成
- この節で行うこと
- ブログ記事アーカイブテンプレートで使えるテンプレートタグ
- ブログ記事アーカイブテンプレートを作る
- アーカイブマッピングの設定
- ウェブページの扱い方
- ウェブサイトと同じ手順
第5章 各種機能の追加
- タグクラウドの表示
- この節で行うこと
- タグの一覧を出力する
- タグクラウドを出力する
- トラックバックの受信と表示
- この節で行うこと
- トラックバックURLの表示
- ウェブページ/ブログ記事ごとのトラックバック一覧の表示
- ブログ記事/ウェブページごとのトラックバック数の表示
- 最近のトラックバックの一覧表示
- アイテム(画像等)の表示
- この節で行うこと
- アイテムの一覧を出力する---MTAssetsタグ
- アイテムの情報を出力する
- メインページのテンプレートを書き換える
- コメントの受信と表示---その①・コメント一覧とコメント投稿フォームの出力
- この節で行うこと
- コメントの一覧の出力
- コメント投稿フォームの出力
- サンプルファイル
- コメントの受信と表示---その②・システムテンプレートの作成
- システムテンプレートについて
- コメントプレビューテンプレートの作成
- コメントプレビューテンプレートの例
- コメント完了テンプレートの作成
- コメントの受信と表示---その③・メインページ等の書き換え
- この節で行うこと
- コメント数の出力
- 最近のコメントを出力する
- 検索フォームと検索結果の表示
- この節で行うこと
- Movable Typeの検索の仕組み
- 検索フォームの設置
- 検索関連のテンプレートタグ
- 検索結果テンプレートの作成
- 検索結果のページ分割
第6章 テンプレート関係の各種のテクニック
- ブログ記事/ウェブページの著者の情報を出力する
- この節で行うこと
- 投稿したユーザーの情報を出力する
- テンプレートの書き換えの例
- 先頭のX件とその次のY件の出力方法を変える
- この節で行うこと
- lastnモディファイアとoffsetモディファイア
- 最初の1件とその後の10件で出力を変える
- 特定のカテゴリ/フォルダのブログ記事/ウェブページ一覧を出力する
- categoryモディファイアを使う
- categoryモディファイアの例
- 同名のカテゴリがある場合
- 特定のフォルダのウェブページの一覧を出力する
- リストの最初/最後のときだけ出力内容を変える
- リストの最初/最後を判断する条件タグ
- 空の要素を出力することを防ぐ
- ブログ記事を日ごとにまとめて出力する
- MTDateHeader/MTDateFooterタグについて
- 同じ日の先頭の記事の前に日付を出力する
- パンくずリストを出力する
- この節で行うこと
- MTParentCategoriesタグ
- MTParentFoldersタグ
- カテゴリアーカイブテンプレートの書き換え
- ブログ記事アーカイブテンプレートの書き換え
- ウェブページアーカイブテンプレートの書き換え
- カテゴリ/フォルダに属さないブログ記事/フォルダでの問題
- メインページに各カテゴリの最新ブログ記事を出力する
- この節で取り上げる例
- カテゴリ別の最新ブログ記事一覧の出力
- テンプレートの例
- グローバルモディファイアを使う
- グローバルモディファイアの概要
- グローバルモディファイアの指定方法
- 大文字/小文字の変換
- 空白の削除
- 「<」「>」「"」を文字実体参照に変換する---encode_htmlモディファイア
- その他のグローバルモディファイアについて
- テンプレートにコメントを入れる
- MTIgnoreタグ
- テンプレートを部分的に再構築しないようにする
- MTIgnoreタグを使ってテンプレートの不具合を探す
休日表示付きリアルタイムカレンダー for WordPress v1.7
配布中の「休日表示付きリアルタイムカレンダー for WordPress」をバージョンアップしました。

変更点はCSSのみで、本日を示す枠のスタイルを td 要素の class属性「today」に付与していましたが、id 属性「today」にスタイルを与えるように変更しました。
バージョンアップ版は以下のリンクからダウンロードできます。
土日の曜日表示にも配色されるように設定していますが、色がつかない場合は、サイトのURLをコメントにてご連絡ください。
POKKA ビズタイムカフェ「冴えるBLACK」
最近、仕事中に好んで飲んでいるのが、POKKA から発売されている、ビズタイムカフェ「冴えるBLACK」です。
コーヒーは基本的にブラック派なので、缶コーヒーもブラックタイプを選びます。ただ、独特のえぐみが残るものが多いので、外出時以外であまり買うことはなかったのですが、この「冴えるブラック」は後味がすっきりしていて非常に飲みやすく、結構飲んでます。
コンビニなどであまりみかけないのが残念です。ブラック派の方におすすめします。
T-01Aで通信できなくなるトラブル
DoCoMoのスマートフォン「T-01A」を利用中ですが、突然メール受信時に「外部機器接続中のため、ご利用できません」というメッセージが出て、メールが受信できなくなりました。
USBでPCと接続したままの状態であれば、同じエラーが出るのは知っていたので、その場合は一旦PCとの接続を解除していたのですが、今回の場合はPCと接続しているわけではなかったので、焦りました。
ネットで調べたところ、原因は、他の外部機器との接続の設定がオンになってしまっていたようで、「スタート」→「設定」→「接続」→「Bluetooth」→「モード」の「Bluetoothをオンにする」のチェックを外したところ、無事受信できるようになりました。
何かの拍子に、Bluetoothの設定画面で「利用する」にチェックをつけてしまったのだと思います。
USBによる外部機器との接続以外にも、wi-fi や Bluetooh がアクティブな状態になっていると通信できないようです。
モデレーターさん
Movable Type 4.34 リリース
Movable Type 4.34 がリリースされました。ダウンロードは以下のリンクからどうぞ。
4.34 では、いくつかのバグフィックスが行なわれています。
ということで、手抜き記事ですいません。
Movable Type アップグレードキャンペーン
Movable Type のアップグレードキャンペーンが開始されました。
Movable Type アップグレードキャンペーンのお知らせ
2月17日(水)~3月26日(金)の期間中、Movable Type リモートサービス(MTRS)にて有償で提供しているアップグレード作業(サーバー環境調査込み)を、21,000円分お得な割引価格で提供する、Movable Type アップグレードキャンペーンを実施いたします。
これで、通常52,500円~のところが、31,500円~となるようです。
また、MT ユーザー優待価格販売も、次のように継続して行なわれてます。
MT4ユーザー優待版
- ユーザー数限定版(1サーバー・5ユーザー):21,000円
- 1サーバー・無制限ユーザー:52,500円
MT3ユーザー優待版
- ユーザー数限定版(1サーバー・5ユーザー):42,000円
- 1サーバー・無制限ユーザー:73,500円
さらに、MTユーザー優待価格版を購入された方の中から抽選で30名に、3月下旬に出版予定の「基本からしっかりわかるMovable Type 5カスタマイズブック」をプレゼントする企画も始まっています。
MTInclude タグの name モディファイア
MTInclude タグはテンプレートから別のテンプレートやファイルを引き込むためのタグですが、非公式なモディファイアとして、name モディファイアがあります。
<$mt:Include name="xx"$>
name モディファイアは、アプリケーションディレクトリをルートとして、指定されたファイルをインクルードします。モディファイアの値にはパスを指定することも可能です。
例えば、テンプレートに次のように記述して再構築すると、「ようこそ」画面が表示されます。
<$mt:Include name="index.html"$>
このモディファイアは、管理画面用テンプレートファイルの、テンプレートファイルのインクルードで使われています。
クロネコメール便
「クロネコメール便」を初めて使ったので、その備忘録です。
1.クロネコメール便とは
公式サイトに「荷物の外装に記載された住所の荷物受け・新聞受け・郵便受け・メール室等に投函・配達するサービスです。」とあり、要するに宅急便のように伝票に宛先を書かずに、通常の郵便と同じような形式で送ることができます。
2.料金
- A4(厚さ1cmまで):80円
- A4(厚さ2cmまで):160円
- B4(厚さ1cmまで):160円
- B4(厚さ2cmまで):240円
クロネコメール便速達サービスは、上記料金にプラス100円で翌日に届けてくれます。
3.日数
クロネコメール便速達サービスは、600km圏内は翌日、600km圏以上は翌々日が目安です。
4.取扱店・コンビニエンスストア
コンビニで扱っていると思ったのですが、そのような表示や看板がどのコンビニもなくて、探し回りました。たどり着いたのはセブンイレブンで、レジの下に「メール便」の小さいステッカーが貼られてました。
ということで掲載しておきます。
- セブンイレブン全店
- スリーエフ全店
- ファミリーマート(一部店舗を除く)
- リトルスター(東北地区)
- リックス全店(北陸地区)
- ココストア(一部店舗を除く)
- セーブオン(一部店舗を除く)
- エブリワン全店(九州地区)
- ポプラ(一部店舗を除く)
- 生活彩家(一部店舗を除く)
- くらしハウス(一部店舗を除く)
- スリーエイト(一部店舗を除く)
分からないときは0120-01-9625に問い合わせましょう。
5.送れるもの
厚さ2cm以内のカタログ・パンフレット・書類などです。信書・現金・有価証券・パスポート・規格外のもの・危険物などは送れません。
Windows で SMTP サーバを立ち上げる
Windows のインターネット インフォメーション サービス(IIS)を使って SMTP サーバを立ち上げる方法を紹介します。
なお現在は、Outbound Port 25 Blocking(OP25B) が設定されているので、このエントリーの手順で立ち上げた SMTP サーバーから送信可能なプロバイダのメールサーバはほとんどありません。
注:この記事は随分前に下書きにしていたものです。とりあえず公開します。
設定方法
コントロールパネルの「プログラムの追加と削除」をクリックし、開いた画面の左にある「Windowsコンポーネントの追加と削除」をクリック。
「インターネット インフォメーション サービス(IIS)」をクリックして、「詳細」をクリック。
「SMTP Service」をチェックして「OK」をクリック。
「次へ」をクリック。
コンポーネントがインストールされます。
完了したら「完了」をクリック。「プログラムの追加と削除」の画面も閉じてください。
「スタート」→「ファイル名を指定して実行」をクリックして、下記を入力
%SystemRoot%\system32\inetsrv\iis.msc

インターネットインフォメーションサービス画面が開きます。
左側のツリーを展開して、「既定のSMTP仮想サーバー」に×印がついていなければ動作中です。
もし、×印がついていたら、「既定のSMTP仮想サーバー」を右クリックして、「開始」を選択してください。
つづいてメールサーバの詳細を設定します。「既定のSMTP仮想サーバー」を右クリックして、「プロパティ」を選択します。
「既定のSMTP仮想サーバーのプロパティ」画面が開くので、「アクセス」タブをクリックして、「認証」をクリック。

「匿名アクセス」にチェックされていれば、送信時にユーザー名とパスワードは必要ありません。とりあえずここでは「OK」をクリックしてこの状態で作業を進めます。

つづいて、SMTPサーバへのアクセスを許可するコンピュータの設定を行います。「接続」をクリック。

「以下のリストに含まれるコンピュータのみ」を選択して、「追加」をクリック。

許可するコンピュータが1台だけの場合、「1台のコンピュータ」をクリックして、IPアドレスを設定します。ここではローカルマシンなので、「127.0.0.1」を入力し、「OK」をクリックします。なお、実際には「127.0.0.1」では正常にメールが送信できない可能性があるので、自PCに割り当てられているIPアドレスを確認して、その内容を設定ください。IPアドレスの確認方法は、コマンドプロンプトで「ipconfig」と入力して、応答の「IP Address」の右側に表示されている内容です。

設定後、ひとつ前の画面が次のようになったことを確認し、「OK」をクリック。

つづいて、電子メールの中継を許可するコンピュータの設定を行います。「中継」をクリック。

「以下のリストに含まれるコンピュータのみ」を選択して、「追加」をクリック。

中継を許可するコンピュータが1台だけの場合、「1台のコンピュータ」をクリックして、IPアドレスを設定します。ここではローカルマシンなので、「127.0.0.1」を入力し、「OK」をクリックします。

設定後、ひとつ前の画面が次のようになったことを確認し、「上のコンピュータのリストに関係なく、正しく認識されたすべてのコンピュータを中継に使用する」のチェックを外して、「OK」をクリック。「既定のSMTP仮想サーバーのプロパティ」画面も「OK」をクリックして閉じます。

インターネットインフォメーションサービス画面のツリーを展開して、「ドメイン」をクリックし、ドメイン名を表示します。このドメイン名を、メールサーバの送信メールサーバ情報の「サーバ名」になります。
動作確認のため、メールクライアントにSMTPサーバの設定を行います。以下は Thunderbird の例で、「ツール」→「アカウント設定」でアカウント設定画面を開き、左メニューより「送信(SMTP)サーバ」をクリックし、右側の「追加」をクリックした画面です。開いた画面の「説明」「サーバ名」にそれぞれの値を設定します。

複数のSMTPサーバを設定した場合は「既定値に設定」という項目があるので、それを利用してSMTPサーバを切り替えることができます。
MTJ
にっくさんが「MTJ」という、海外向けの国内MT情報発信ブログを立ち上げられているのを、ブログヘラルド経由で知りました。
サイトはまだ立ち上がって間もないようですが、すでにいくつかのプラグインやテンプレートタグについての記事が投稿されています。当サイトの情報もいくつか取り上げていただいています。
- Yujiro of "Koiki-Kukan" developed a encrypting plugin "Crypt"
- You can use "else" statement in your block tags
ということで、他の記事も含め、情報発信を楽しみにしています。
丈夫な
ブログ記事タイトルを改行できるようにする
当サイトで配布している Movable Type テーマで「ブログ記事タイトルに、改行用の br 要素が入りません」という質問がありましたので、本エントリーで情報展開しておきます。
対処方法は、「ブログ記事の概要」テンプレートモジュールにある、
…前略…
<h2 id="a<mt:entryID pad="1" />" class="entry-header"><a href="<mt:entryPermalink />"><mt:entryTitle encode_html="1" /></a></h2>
…後略…
にある赤色のencode_htmlモディファイアを削除して、
…前略…
<h2 id="a<mt:entryID pad="1" />" class="entry-header"><a href="<mt:entryPermalink />"><mt:entryTitle /></a></h2>
…後略…
に変更します。
これで(X)HTMLタグはそのまま有効になりますが、「&」などの文字を利用する場合は注意が必要です。
ダンボの
Movable Type 5 テーマのインポータについて
Movable Type 5 テーマのインポータについて、なんとなく仕組みが理解できたので、紹介しておきます。認識誤りがありましたらご指摘ください。
1.用語
- エレメント:テンプレートセット、カテゴリ、フォルダ、カスタムフィールドなど、テーマとしてインポートされる要素
- インポータ:各エレメントを Movable Type にインポートする主体(=実装)
- エクスポータ:各エレメントをテーマとしてファイルにエクスポートする主体(=実装)
2.theme.yaml へのエレメントとインポータの定義方法
テーマでテンプレートセットを定義する場合は、次のようになります。テンプレートセットのエレメントは青色の「template_set」で、テンプレートセットのインポータは赤色の「template_set」です(多分)。
…前略…
elements:
template_set:
component: core
importer: template_set
name: template set
data:
…後略…
3.インポータを定義する意味
インポータというのは、要するに「Movable Type にデータをインポートする人」という意味なので、インポータの定義とは、Movable Type に実装されている、テンプレートセット用のインポータがどこにあるかを指定している、ということになります。
で、テンプレートセットのインポータは、lib/MT/Theme.pmのcore_theme_element_handlers()に定義されています。エクスポータや他のエレメントのインポータについてもここにまとめて定義されています。
sub core_theme_element_handlers {
return {
…中略…
template_set => {
label => 'Template Set',
importer => {
import => '$Core::MT::Theme::TemplateSet::apply',
info => '$Core::MT::Theme::TemplateSet::info',
},
exporter => {
params => 'template_set_export_ids',
template => '$Core::MT::Theme::TemplateSet::export_template',
export => '$Core::MT::Theme::TemplateSet::export',
finalize => '$Core::MT::Theme::TemplateSet::finalize',
condition => '$Core::MT::Theme::TemplateSet::condition',
},
},
…中略…
};
}
実際にインポートをする実装は、青色の行のimportに対応する、lib/MT/Theme/TemplateSet.pmのapply()になります。
sub apply {
my ( $element, $theme, $obj_to_apply, $opts ) = @_;
my $set = $element->{data};
if ( !ref $set ) {
$set = MT->registry('template_sets', $set);
}
…後略…
4.require について
エレメントには次のようにrequireを設定することができます。テーマを適用するにあたって、そのエレメントを必須にしたい場合は、requireに「1」を設定します。デフォルト値は「0」です。
…前略…
elements:
template_set:
component: core
importer: template_set
require: 1
name: template set
data:
…後略…
「1」を設定した状態でインポートを実行(=テーマを適用)し、何かの不具合でインポートに失敗すると、このエレメントを含むテーマを適用しません。「0」を設定した状態でインポートに失敗すると、このエレメントのインポートをスキップして、次のエレメントのインポートを続行します(多分)。
その実装は、lib/MT/Theme.pmのapply()にあります(他にもあるかもしれません)。
sub apply {
my $theme = shift;
my ( $blog, %opts ) = @_;
…中略…
## run all element handlers.
my @elements = $theme->elements;
for my $element ( @elements ) {
next if $element->{class} && ( $element->{class} ne $blog->class_type );
next if $importer_filter && !$importer_filter->{ $element->{importer} };
my $result = $element->apply( $blog, $opts{ $element->{importer} } );
if ( !$result ) {
if ( $element->{require} ) {
return $theme->error(
MT->translate(
…中略…
}
else {
$theme->{warning_on_apply} = 1;
require MT::Log;
my $log = MT::Log->new;
$log->message(
MT->translate(
…中略…
}
}
}
EntryImporter プラグイン
Movable Type 5 のテーマでブログ記事のインポータを提供するプラグインです。
1.機能
プラグインのインストール後、テーマの theme.yaml に次のようなハッシュを記述すれば、テーマ固有のブログ記事としてインポートできます。雑駁な説明ですいません。
…前略…
elements:
default_entries:
component: core
importer: default_entries
name: Default Entries
data:
about:
title: About
text: <__trans phrase="ENTRY_BODY1">
tags: @about
category: about
contact:
title: <__trans phrase="Contact">
text: <__trans phrase="ENTRY_BODY2">
tags: @contact
category: contact
…後略…
2.プラグインのダウンロード
下記の EntryImporter_0_01.zip をクリックして、プラグインアーカイブをダウンロード。
プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
3.プラグインのインストール
プラグインアーカイブを展開し、中にある EntryImporter フォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロード。
システム管理画面のプラグイン一覧で、「EntryImporter~」が表示されればインストール完了です。

大人の科学マガジン Vol.26(ミニエレキギター)
遅ればせながら「大人の科学マガジン Vol.26(ミニエレキギター) 」を購入しました。
![]() | 大人の科学マガジン Vol.26(ミニエレキギター) (Gakken Mook) 大人の科学マガジン編集部・編 学習研究社 2009-12-17 売り上げランキング : 357 Amazonで詳しく見る by G-Tools |
が、残念ながらまだ作ってないので、購入のお知らせのみです…。
作ったら改めて報告したいと思います。Amazon のランキングを見ると、かなり売れているようです。
車検と公衆電話
以前の車検事件の反省を活かし、今回も無事、車検切れ前にカーショップに車をもっていくことができました。
「今から1時間ほどでもっていきます」
とカーショップに連絡した後、ざっと車を洗車して、大体その時間に車を持って行ったのですが、店が閉まっていました(個人経営で丁度定休日だった模様)。しかも、電話番号も分からない状態(家から10分もかからないところなので、すぐに用意が済むと思って携帯を家においてきてしまった)。
幸い、店頭に電話番号は書かれていたのですが、携帯がないので、カーショップに車だけ置いて公衆電話を探すことにしました。
で、これまた幸いにも、すぐ近くに電話ボックスがみつかり、そこからカーショップに連絡し、無事ことなきを得ました。あとで考えてみると車で探した方が早かった気もしますが。
それにしても公衆電話を使ったのは久しぶりのことで、前回使ったのが何年前か分からない状態です。携帯電話を持っているとなかなか気がつかないのですが、今回は公衆電話のありがたみをひしひしと感じました。
ということで、「公衆電話チズ」というサイトをみつけました。
カメルーンの人は
MTEntries タグ + sort_by モディファイアでブログ記事がソートされない件
Movable Type 5 の実験で、MTEntries タグに sort_by モディファイアを付与して、モディファイアの値に「title」を設定したのですが、正常にソートされないようです。
<mt:If tag="BlogEntryCount">
<mt:Entries sort_by="title">
<mt:EntriesHeader>
<div class="widget-recent-entries widget-archives widget">
<h3 class="widget-header">最近のブログ記事</h3>
<div class="widget-content">
<ul>
</mt:EntriesHeader>
<li><a href="<$mt:EntryPermalink$>"><$mt:EntryTitle$></a></li>
<mt:EntriesFooter>
</ul>
</div>
</div>
</mt:EntriesFooter>
</mt:Entries>
</mt:If>
lastn モディファイアは sort_by モディファイアと競合するので外してますが、投稿順でしかソートされません。またインデックステンプレート以外のページでも同じ表示です。「excerpt」指定も同様です。設定ミスであればすいません。
MTPages タグでは正常にソートされます。
Movable Type でショートコード
Movable Type で WordPress のショートコードっぽいことを行う記事がありましたので、紹介します。
なお、本格的にショートコードを利用したい場合は、藤本壱さんのショートコードプラグインをおすすめします。
さて、ショートコードを実現するためには簡単なプラグインを作成します。また、MTEntryBody タグに mteval モディファイアを予め設定しておく必要があります。
1.記事中に著作権表示をする
記事中に、MTCopyrightNotice タグを記述することで、著作権表示に置き換えるショートコードを作成します。
次の2つのファイルを作成します。
config.yaml
id: CopyrightShortcode
key: CopyrightShortcode
name: CopyrightShortcode
description: Provides a simple function that returns a copyright notice
tags:
function:
CopyrightNotice: CopyrightShortcode::_hdlr_copyright_notice
CopyrightShortcode.pm
package CopyrightShortcode;
use strict;
sub _hdlr_copyright_notice {
return "Copyright 2010 John Smith. All rights reserved."
}
1;
作成後、各ファイルを次のように配置します。「MT_DIR」はアプリケーションディレクトリです。
MT_DIR/plugins/CopyrightShortcode/config.yaml
MT_DIR/plugins/CopyrightShortcode/lib/CopyrightShortcode.pm
2.記事中に引用文を表示する
記事中に、MTPullQuote タグを記述することで、タグの内容を blockquote タグで括ります。またMTPullQuote タグブロック内のテンプレートタグも評価します。
次の2つのファイルを作成します。
config.yaml
id: PullQuoteShortcode
key: PullQuoteShortcode
name: PullQuoteShortcode
description: Provides a simple function that returns a copyright notice
tags:
block:
PullQuote: PullQuoteShortcode::_hdlr_pullquotes
CopyrightShortcode.pm
package PullQuoteShortcode;
use strict;
sub _hdlr_pullquotes {
my ($ctx, $args, $cond) = @_;
my $out = $ctx->slurp($args, $cond) or return '';
return "<blockquote class='pullquote'>$out</blockquote>";
}
1;
作成後、各ファイルを次のように配置します。
MT_DIR/plugins/PullQuoteShortcode/config.yaml
MT_DIR/plugins/PullQuoteShortcode/lib/PullQuoteShortcode.pm
以上です。リッチテキストではテンプレートタグが実体参照されるので、利用の際は注意が必要です。
Movable Type レッスンブック MT5対応
エビスコム(エ・ビスコム・テック・ラボ)の Movable Type 5 対応書籍の紹介です。
![]() | Movable Type レッスンブック MT5対応 ソシム 2010-02-01 売り上げランキング : 55143 Amazonで詳しく見る by G-Tools |
本書は「Movable Typeレッスンブック―ステップ・バイ・ステップ形式でマスターできる」のMovable Type 5 対応版で、順を追って読み進めることでサイトが構築できる構成になっています。各章では、テンプレートタグを利用したカスタマイズのバリエーションが色々と用意されています。
- Chapter1 下準備
- STEP 1-1 インストール
- STEP 1-2 基本設定
- STEP 1-3 記事を投稿する
- STEP 1-4 テンプレートの準備
- Chapter2 基本的なブログの作成
- STEP 2-1 トップページを作成する
- STEP 2-2 ヘッダーを表示する
- STEP 2-3 スタイルシートでデザインを指定する
- STEP 2-4 記事のタイトルと本文を表示する
- STEP 2-5 記事のデザインを指定する
- STEP 2-6 記事の投稿日時とカテゴリーを表示する
- STEP 2-7 画像を使ってデザインする
- STEP 2-8 フッターを表示する
- STEP 2-9 記事の個別ページを作成する
- Chapter3 記事に挿入した画像のレイアウト
- STEP 3-1 記事の本文に画像を挿入する
- STEP 3-2 本文の左右に画像を挿入する
- Chapter4 ブログのメニュー
- STEP 4-1 2段組で表示する
- STEP 4-2 カテゴリーメニューを追加する
- STEP 4-3 メニューのデザインを指定する
- STEP 4-4 カテゴリー別ページを作成する
- STEP 4-5 月別メニューを追加する
- STEP 4-6 月別ページを作成する
- STEP 4-7 最近の記事のメニューを追加する
- STEP 4-8 記事の個別ページを2段組で表示する
- STEP 4-9 サイドバーをモジュール化する
- STEP 4-10 フィードへのリンクを追加する
- Chapter5 コメントとトラックバック
- STEP 5-1 コメントとトラックバックに関する設定を行う
- STEP 5-2 コメントの投稿フォームを追加する
- STEP 5-3 コメントの投稿フォームのデザインを指定する
- STEP 5-4 受信したコメントを表示する
- STEP 5-5 コメントのプレビューページをカスタマイズする
- STEP 5-6 コメントのエラーページをカスタマイズする
- STEP 5-7 トラックバックURLを追加する
- STEP 5-8 受信したトラックバックを表示する
- STEP 5-9 コメント/トラックバック部分を開くリンクを追加する
- Chapter6 パワーアップアレンジ
- STEP 6-1 トップページを3段組で表示する
- STEP 6-2 検索フォームを追加する
- STEP 6-3 検索結果ページを作成する
- STEP 6-4 タグクラウドを追加する
- Chapter7 従来型のホームページの作成
- STEP 7-1 サイトのトップページを従来型のページにする
- STEP 7-2 独立ページを作成する
- STEP 7-3 独立ページへのリンクを追加する
- STEP 7-4 ナビゲーションメニューをモジュール化する
- STEP 7-4 ブログにナビゲーションメニューを表示する
PowerEdit プラグイン v0.10
公開中の「PowerEdit プラグイン」をMovable Type 5.0対応にバージョンアップしました。
それっぽく表示できていますが、各フィールドの幅は適宜調整してください。
最新版のプラグインは下記のページよりダウンロードできます。
バージョン4版から入れ替える場合は、5項の「alt-tmpl.zip」のみを入れ替えてください。
予定日を過ぎたブログ記事を「最近のブログ記事」に表示しない
Movable Type 4 以降で、ブログ記事を指定した日程順に並べ、予定日を過ぎたブログ記事は「最近のブログ記事」に表示しないカスタマイズです。完全形ではありませんが、とりあえずアイデアということで紹介します。
1.カスタムフィールドの作成
ブログ記事用のカスタムフィールド「EntryScheduleDate(日付フィールド)」を作ります。このフィールドにスケジュールとなる任意の日付を設定します。
作成したカスタムフィールドのベースネームは、次項の都合で「cf_1」としておきます。
2.インデックステンプレートの作成
次のインデックステンプレートを作成します。このテンプレートはダイナミックパブリッシングを指定します。
<mt:Date format="%Y%m%d" setvar="current_date" />
<mt:Entries limit="5" sort_by="field:cf_1" sort_order="ascend">
<mt:EntriesHeader>
<div class="widget">
<h3 class="widget-header">今後のスケジュール</h3>
<div class="widget-content">
<ul>
</mt:EntriesHeader>
<mt:EntryScheduleDate format="%Y%m%d" setvar="entry_date" />
<mt:if name="entry_date" ge="$current_date">
<li><mt:EntryScheduleDate format="%b月%e日" strip="" />:<mt:EntryTitle /></li>
</mt:if>
<mt:EntriesFooter>
</ul>
</div>
</div>
</mt:EntriesFooter>
</mt:Entries>
まず、MTDate タグでこのインデックステンプレートの再構築日付(=アクセス日付:年月日)を取得し、変数current_dateに保存します。
次に、MTEntriesタグでブログ記事を処理します。「sort_by="field:cf_1"」と「sort_order="ascend"」を組み合わせて、設定したスケジュール順に表示します。
カスタムフィールドMTEntryScheduleDateタグの日付(年月日)を変数entry_dateに保存し、変数current_date以上、つまり同一日か未来の日付であれば一覧に表示します。
このサンプルでは年月日までの比較ですが、formatモディファイアの値を変更すれば時分秒まで比較可能です。
3.その他
以前に公開した「新着マーク表示」のように、PHPを利用してテンプレートタグを書き換えればスタティックパブリッシングでも動作すると思います。







