コヨーテが

June 30,2006 12:20 AM
Category:[ダジャレ]
Tag:[]
Permalink

言ったとさ

Comments [3] | Trackbacks [0]

Movable Type 3.3(英語版)リリース延期

June 29,2006 7:20 PM
Category:[3.3-ja]
Tag:[, ]
Permalink

日本語版がリリースされ、興味が薄れつつある英語版のリリースが延期になりました。

Where in the world is MT 3.3?!

?略? It is for all of those good reasons that we've decided to postpone the final release for an unspecified amount of time in order to make sure that we and, in turn, your experience with the whole product, are solid on all fronts. ?略?

開発体制は不明ですが、場合によっては日本語版のマイナーバージョンアップが行われる可能性もありそうです。

Comments [0] | Trackbacks [0]

Movable Type 3.3 エントリー・タグ詳説

June 29,2006 9:38 AM
Category:[その他, エントリー・タグ]
Tag:[, ]
Permalink

Movable Type 3.3 から追加されたタグ機能の利用方法が下記のページに掲載されています。

Movable Type Beta WeblogEverybody loves tags!

以下、元記事で紹介されているタグの機能や利用方法について超意訳で紹介します。

1.タグとは?

タグは、項目の特定の一部分を説明するための簡単な単語、あるいは語句です。例えば、私は(私自身に)

human, male, guy, sailor, product manager, san franciscan, shaved head, tall, joke-cracking, six apartisan, stressed-out, geek

というタグ付けをするかもしれません。それらのタグの全てが、私が誰であるかに関して、より良い情報を与えてくれます。

Movable Type ではエントリーにタグを与える機能を提供します。例えば、あなたはこの記事に関するエントリーを書き、エントリーに、

movable type 3.3, movable type, new release, beta, feature, tagging, entry tags

というタグを付与することができます。
そして後でこのエントリー(や他のエントリー)を見つけるのに使用することができる、特別なメタデータ(MTタグ)を提供します。

Movable Type 3.3 では「自動同義語」をサポートしています。例えば "Movable Type" は "movabletype" と同等であるとみなします。特定のタグを共有するエントリーは、自動的に関連づけられます。これで Movable Typeインタフェース、またはあなたの公開ブログから関連する内容を見つけることが簡単になります。

タグのデフォルト区切り文字はカンマですが、

メイン・メニュー > システム・メニュー > 投稿者 > [投稿者名]

の「タグ区切り」でスペース文字に変更することもできます。
エントリー編集画面のタグ・フィールドでは、使用済みのタグを利用した自動補完機能があります。

2.キーワードとの違い

キーワードはエントリーに括りつけられた、MTEntryKeywords によって出力される文字列で、検索することも可能ですが、エントリー・タグは強力かつ洗練されたタグのセットで、「タグサーチ」という機能で特定のタグが与えられたエントリーを検索します。
将来は XML-RPC API でエントリー・タグがサポートされる予定です。

3.カテゴリーとの違い

タグは関連するエントリーを分類・組織化し、検索を助けるという点においてはカテゴリーと同様ですが、下記の点に相違があります。

Model:
カテゴリは目次のようにトップダウン的な設定ですが、タグは本のインデックスのようにボトムアップで設定されます。
Specificity:
カテゴリは汎用的で、エントリーを副カテゴリに分配することで特性を獲得する場合に適しています。タグは限定的で、タグの組み合わせで(エントリーの)特性を獲得する場合に適しています。
Planning:
カテゴリは少ない数で計画性があり、時間の経過によって一貫性のあるものとなります。タグは計画性がなく、各項目の細部に基づいたものになります。
Archiving vs searching:
カテゴリーは「アーカイブ」として異なるページに各カテゴリーに関連するエントリーを静的に格納します。タグも1ページに特定のタグによるエントリーを表示しますが、それらのページはダイナミック(再構築不要)に表示されます。

4.エントリー・タグの追加と削除

タグを利用するには、エントリー編集画面の下にある「画面の表示設定を変更」をクリックして、ダイアログの「エディター・フィールド」欄の左側にあるラジオボタンが「基本」になっているので「すべて」または「カスタム」を選択します。
「すべて」を選んだ場合はそのまま右下の「保存」をクリックします。「カスタム」を選んだ場合は、「タグ」というチェックボックスにチェックをしてください。
追記:左下にある「アクション・バー」で「両方」を選択しておくと「保存」「確認」ボタンがエントリー上部にも表示されて便利です。

エントリー・タグフィールドについて

エントリー・タグフィールドにタグを設定します。タグを複数記述する場合はカンマで区切ってください。タグはカンマ以外のどのような文字列も許容しますが、

@ ! ` \ < > * & # / ~ ? ' " . , = ( ) $ { } [ ] ; : <space> + -

以外の文字列を入力することで正常に動作します。入力した英文字は最終的に小文字として扱われます。

例外的な利用方法として、タグに "@" を付加することでタグは「プライベート・モード」として機能します。プライベート・モードのタグはブログ上で表示されることはありませんが、検索インタフェースや管理インタフェースで使用することができます。

エントリー・タグの自動補完

エントリー・タグを入力フィールドにタイプした時、使用済みのエントリー・タグと一致する文字列で始まるのであれば、それらが候補としてドロップダウンリストで表示されます。リストを直接クリックするか上下キーで選択した後 Tab キーを押すと、エントリー・タグの入力が補完されます。

5.エントリー・タグの管理

エントリー・タグはブログ全体およびブログ単位のどちらでも管理可能です。それぞれの管理画面のサイドバーにある「タグ」をクリックすると管理画面に遷移します。

削除

削除したいタグの左側にあるチェックボックスをチェックして、削除ボタンをクリックします。

タグ名の変更

タグ名のリンクをクリックするとテキストボックスに切り替わるので、任意の名称を入力して「名前の変更」をクリックします。

タグのマージ

前記の「タグ名の変更」で、すでに存在するタグ名を設定すると「マージ(合体)しますか?」という旨のダイアログが表示されます。「OK」をクリックするとマージされます。

6.エントリー・タグの表示

Movable Type 3.3 ではエントリー・タグ表示のために、次のMTタグを提供します。

  • MTTags
  • MTTagName
  • MTTagID
  • MTTagCount
  • MTTagRank
  • MTTagSearchLink
  • MTEntryTags
  • MTEntryIfTagged

以下、テンプレートに対するエントリー・タグの設定方法です。関連タグを青色で示しています。

エントリーにタグを表示

<MTEntries>
    The entry "<$MTEntryTitle$>" is tagged:
        <MTEntryTags glue=", "><$MTTagName$></MTEntryTags>
</MTEntries>

エントリーにタグを表示(タグの有無判定あり)

<MTEntries>
    The entry "<$MTEntryTitle$>"
        <MTEntryIfTagged>
            is tagged: <MTEntryTags glue=", "><$MTTagName$></MTEntryTags>
        <MTElse>
            has no entry tags.
        </MTElse>
        </MTEntryIfTagged>
</MTEntries>

タグ検索用リンクを表示

<MTEntryTags glue=", ">
    <a href="<$MTTagSearchLink$>"><$MTTagName$></a></MTEntryTags>

tag 属性で指定したタグの有無で表示を制御

<MTEntries>
    [...MTEntry data...]
    <MTEntryIfTagged tag="important">
        <p><img src="/movabletype/docs/3.2/images/gold_star.gif"
            alt="This is important!" /></p>
    </MTEntryIfTagged>
</MTEntries>

ブログで使用されるすべてのタグを表示

<ul>
    <MTTags>
    <li>
        <a href="<$MTTagSearchLink$>"><$MTTagName$></a>
    </li>
    </MTTags>
</ul>

ブログで使用されるすべてのタグを表示(タグカウントつき)

<ul>
    <MTTags>
    <li>
        <a href="<$MTTagSearchLink$>"><$MTTagName$> (<$MTTagCount$>)</a>
    </li>
    </MTTags>
</ul>

タグクラウド(タグを雲のように表示)

<div class="module-tagcloud module">
    <h2 class="module-header">Tag cloud</h2>
    <div class="module-content">
        <ul class="module-list">
            <MTTags>
                <li class="module-list-item taglevel<$MTTagRank$>">
                    <a href="<$MTTagSearchLink$>"><$MTTagName$></a>
                </li>
            </MTTags>
        </ul>
    </div>
</div>
タグクラウドは下記のCSSが必要です。
.module-tagcloud .module-content {text-align: center; }
.module-tagcloud .module-content .module-list { list-style: none; }
.module-tagcloud .module-content .module-list .module-list-item { display: inline; }
.module-tagcloud .module-content .module-list li.taglevel1 { font-size: 19px; }
.module-tagcloud .module-content .module-list li.taglevel2 { font-size: 17px; }
.module-tagcloud .module-content .module-list li.taglevel3 { font-size: 15px; }
.module-tagcloud .module-content .module-list li.taglevel4 { font-size: 13px; }
.module-tagcloud .module-content .module-list li.taglevel5 { font-size: 11px; }
.module-tagcloud .module-content .module-list li.taglevel6 { font-size: 9px; }

特定のタグが与えられたエントリーのみ表示

<MTEntries tag="TAGNAME">
    [...]
</MTEntries>

特定のタグが与えられたエントリー最新1件をトップに表示

<!-- The "banner" entry -->
<MTEntries tag="Important" lastn="1">
    [...]
</MTEntries>
 
<!-- All other recent entries -->    
<MTEntries>
    [...]
</MTEntries>

注目して欲しいエントリー("notable" というタグを付与)をサイドバーに表示

<div class="module-archives module">
    <h2 class="module-header">Notable entries</h2>
    <div class="module-content">
        <ul class="module-list">
            <MTEntries lastn="5" tag="notable">
                <li class="module-list-item">
                    <a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a>
                </li>
            </MTEntries>
        </ul>
    </div>
</div>

tag 属性にNOTオペレータが付与されたタグを用いてエントリーの公開を抑止する

<MTEntries tag="NOT noindex">
    [...]
</MTEntries>

アーカイブページでのタグクラウドのインクルード

再構築時のパフォーマンスの問題を回避するため、タグクラウドをアーカイブページに含める場合は、PHPによるモジュール化またはSSIを用いてください。

Comments [33] | Trackbacks [13]

Movable Type 3.3-ja リリース

June 28,2006 11:16 PM
Category:[3.3-ja]
Tag:[, ]
Permalink

Movable Type 3.3-ja が正式リリースされました。

Movable Type 3.3 リリース

Movable Type 3.3の正式リリースをお知らせします。
まずはご期待いただいていた多くの皆さまをお待たせすることになってしまい、申し訳ありませんでした。また、多くの皆さまにベータ版をテストしていただき、日本語ではもちろん、英語でも多くのフィードバックを日本の皆さまからいただきました。

日本語版プラグインディレクトリも同時公開されています。なお当サイトでもプラグイン一覧を提供中です。どうぞごひいきに。

2006.06.29 追記:
Movable Type 3.3 マニュアルも公開されています。

3.3-ja 用テンプレートはベータ版ですでに作成しておりますので、正式版で動作が確認でき次第公開したいと思います。

Comments [0] | Trackbacks [3]

Movable Type 3.3(英語版)28日リリース

June 28,2006 5:30 PM
Category:[3.3-ja]
Tag:[, ]
Permalink

公式サイトのニュースでは、Movable Type 3.3(英語版)が28日にリリースされるようです。

Movable Type 3.3: Ready for release!

Well, it's been months of long, hard work by us and weeks of dedicated beta testing by you all, so it naturally makes me very happy to say that, at long last, Movable Type 3.3 has been frozen and is ready for release! ?(略)? So, look for the release tomorrow and, in the meantime, go tell the world (or at least the very geeky, digerati portion of it) how much you love Movable Type!

Comments [0] | Trackbacks [0]

Movable Type 3.3 リリース延期

June 28,2006 12:38 AM
Category:[3.3-ja]
Tag:[]
Permalink

27日リリース予定の Movable Type 3.3 が延期になりました。

Movable Type 3.3 リリース延期のお知らせ

本日リリースを予定しておりました、Movable Type 3.3 ですが、商品の最終確認が継続中のため、6/27のリリースを延期させていただくことといたしました。

上記の記事と関連はないと思いますが、ベータ1(日本語版含む) から 3.3b3-20060626 まで 「コメントの一覧」テンプレート(の中身)がありません。全く気がついていませんでした。
2006.06.28 追記:中身がないのは製品の仕様だそうです。

Comments [0] | Trackbacks [1]

コメントを新着順に並べ替える

June 27,2006 12:25 AM
Category:[コメント]
Tag:[, , ]
Permalink

Movable Type のデフォルトテンプレートや公開テンプレートのエントリー・アーカイブでは、コメントリストは過去のコメントから順番に表示されるようになっています。「新着順にコメント表示するにはどうすれば良いですか」というご質問を頂きましたので、本エントリーにてご紹介します。

コメントを新着順に並べ替える変更方法は簡単で、管理メニューの「設定」→「基本」→「コメントの表示順」を「降順」にして保存・再構築します。
または、エントリー・アーカイブ(およびコメント・プレビュー)テンプレートの編集画面で MTComments タグに対し、下記のように sort_order 属性を追加します。
<MTComments sort_order="descend">

変更時の注意点としては、コメント投稿フォームをコメントリストの前、つまり新着コメント側へ移動した方がサイト管理者はコメントの返事を書きやすいと思います。
また、MTタグを修正する場合、コメント・プレビューでもコメントリストを表示しているのであれば、エントリー・アーカイブと表示順序を統一するようにしましょう。

Comments [17] | Trackbacks [0]

サイドバーの折りたたみ

マルチカラムレイアウトでサイドバーを丸ごと折りたたむカスタマイズを紹介します。動作は Windows XP+IE6.0/Firefox1.5/Opera8.0 で確認しています。
下記にサンプルを用意しましたのでお試しください。

サイドバーの折りたたみサンプル

タイトル下の両端にあるリンクをクリックすると、サイドバーの表示・非表示が切り替わります。また折りたたみ時にリンクの内容を変更することができます。サンプルは3カラムですが、2カラムレイアウトでの折りたたみも可能です。

1.動作条件

下記の条件で動作します。

  • cookieが有効であること
  • 固定レイアウト(3カラムおよび2カラム)であること

また公開テンプレートで動作するように設定していますので、公開テンプレート以外でご利用になる場合はスクリプトを修正する必要があります。

2.機能概要

下記のような動作でサイドバーを折りたたみます。

  1. 折りたたみ用リンクをクリック
  2. JavaScript起動
  3. cookieより現在のレイアウト名を取得
  4. クリックされたリンク位置(右または左)と現在のレイアウトを判定し、新しいレイアウトに変更
  5. カラム幅がどのレイアウトでも同一になるように、レイアウトに応じて中央カラム幅を変更
  6. 変更したレイアウトに応じてクリックされたテキストリンクを変更
  7. 変更したレイアウト名をcookieに保持

3.ドネーション

カスタマイズ内容のご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
将来に向けてのご寄付(例:ドネーションによる機能追加や改善要望)は、それらが実現しない可能性があるため、ご遠慮ください。

  • 現状のコンテンツで役立った
  • 質問の回答で疑問や不具合が解消された
  • エントリーの修正等で要望内容が満たされた

等の後に判断して頂ければ結構です。
参考:Web投げ銭

上記の「寄付」のリンクをクリックすると Paypal によるお支払いページにジャンプします。

4.スクリプトのダウンロード・アップロード

下記のリンクより sidebarfolder.js をダウンロードし、ご利用のブログのディレクトリにアップロードしててください(ブログツール・ブログサービスによってアップロード先は若干異なります)。

sidebarfolder.js

なお、このスクリプトの先頭に使用するレイアウトを設定する行があります。

var layout = 'layout-three-column';

デフォルトは3カラムになっていますので、2カラムで利用する場合は下記のように変更してください。

2カラム(左サイドバー)

var layout = 'layout-two-column-left';

2カラム(右サイドバー)

var layout = 'layout-two-column-right';

5.テンプレートの修正(スクリプトのインクルード)

サイドバーの折りたたみを設定するテンプレートの <head> ? </head> の部分に下記を追加します。

Movable Type の場合

<script type="text/javascript" src="<$MTBlogURL$>sidebarfolder.js"></script>

Serene Bach の場合

<script type="text/javascript" src="{site_top}sidebarfolder.js"></script>

FC2ブログの場合

<script type="text/javascript" src="<%url>file/sidebarfolder.js"></script>

6.テンプレートの修正(折りたたみ用ナビゲーション追加)

6.1 3カラムレイアウトの場合

    :
<!-- タイトル -->
<div id="banner">
<h1 id="banner-header"><a href="<$MTBlogURL$>" accesskey="1"><$MTBlogName encode_html="1"$></a></h1>
<h2 id="banner-description"><$MTBlogDescription$></h2>
</div>
 
<div id="navi">
<ul><li id="leftmark"><a href="javascript:void(0);" onclick="changeSidebar('left');"><</a></li></ul>
<ul><li id="rightmark"><a href="javascript:void(0);" onclick="changeSidebar('right');">></a></li></ul>
</div>
 
<!-- 左カラム開始 -->
<div id="links-left-box">
<div id="links-left">
    :

6.2 2カラムレイアウト(左サイドバー)

下記を追加してください(6.1の追加部分を変更)。

<div id="navi">
<ul><li id="leftmark"><a href="javascript:void(0);" onclick="changeSidebar('left');"><</a></li></ul>
</div>

6.3 2カラムレイアウト(右サイドバー)

下記を追加してください(6.1の追加部分を変更)。

<div id="navi">
<ul><li id="rightmark"><a href="javascript:void(0);" onclick="changeSidebar('right');">></a></li></ul>
</div>

7.テンプレートの修正(JavaScript 追加)

サイドバーの折りたたみを設定するテンプレートの <head> ? </head> の部分に、A List Apart: Articles: Alternative Style: Working With Alternate Style Sheetsの一部を追加します。すでにご利用になっている場合は不要です。

<script type="text/javascript">
<!--
function createCookie(name,value,days) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
  }
  else expires = "";
  document.cookie = name+"="+value+expires+"; path=/";
}
 
function readCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for(var i=0;i < ca.length;i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
  }
  return null;
}
//-->
</script>

8.スタイルシート修正

スタイルシートに下記を追加します。

#navi {
    padding: 3px;
    border-bottom: 1px solid #666699;
    text-align:center;
    font-size: 12px;
}
#navi ul {
    margin: 0;
    padding: 0;
    display: inline;
}
#navi ul li {
    display: inline;
}
#leftmark {
    margin-right: 395px;
}
#rightmark {
    margin-left: 395px;
}
Comments [8] | Trackbacks [1]

Movable Type 3.2-ja-2 再構築のパフォーマンス

June 25,2006 12:03 AM
Category:[3.2-ja-2, 再構築]
Tag:[, ]
Permalink

以前エントリーした Movable Type 3.3b1-ja 再構築のパフォーマンスの後、「3.2の測定もして欲しい」というリクエストがありました。遅くなりましたが本エントリーで測定結果をお知らせします。相変わらず目分量です。

実行環境等は下記の通りです。

  • OS:Windows XP Service Pack 2(Pen4 2.8GHz メモリ1.5GBで700MBほど使用中)。自宅サーバです。
  • Perl:5.6.1
  • DB:MySQL/SQLite
  • 再構築対象:エントリー・アーカイブ
  • 利用テンプレート:小粋空間3.2テンプレートのエントリー・アーカイブテンプレートを用い、再構築時間に影響があると思われる「最近のコメント *1」「カテゴリーリスト」「サブカテゴリーリスト」をいずれかひとつ設定。その他(カレンダー・最近のエントリー・最近のトラックバック・月別アーカイブ)のリストは常に設定。
  • エントリー:約1000
  • コメント:約7000
  • トラックバック:約2500
  • カテゴリー:103

以下、測定結果です。

1.エントリー・アーカイブの再構築時間

数値は最初の120エントリー(40エントリー×3)の平均を元に算出しています。

MySQLSQLite
最近のコメント18s/40エントリー22s/40エントリー
カテゴリーリスト24s/40エントリー124s/40エントリー
サブカテゴリーリスト33s/40エントリー227s/40エントリー
上記リストなし18s/40エントリー22s/40エントリー

2.CPU使用率

再構築中は常にほぼ100%。ただし「SQLite+リストなし」のみ96?97%でした。

3.メモリ使用率

再構築時間に比例して増加することはありませんでした(再構築単位でリソースが解放されている模様)。


*1 MTEntries に lastn属性値5を追加しています。lastn 属性を設定しない場合、1エントリーの再構築に30s以上かかるようです(MySQL・SQLiteとも)。

Comments [4] | Trackbacks [1]

画像のポップアップウィンドウをカスタマイズする

June 24,2006 1:53 AM
Category:[ポップアップ, 管理画面]
Tag:[, , ]
Permalink

カスタマイズ前Movable Type の管理画面から画像をアップロードした後、次の画面のラジオボタンで「HTMLを表示」を選択し、「ポップアップ」をクリックすると、アップロードした画像をポップアップウィンドウで表示するためのHTMLコードが表示されます(スクリーンショット)。あとはこのコードをエントリーに貼り付ければOKです。

このHTMLコードによるポップアップウィンドウ、アップロードした画像のサイズにあわせてポップアップするのですが、ウィンドウのリサイズやスクロールが無効な状態で表示されるため、画像サイズがディスプレイサイズを超えている場合、(ポップアップウィンドウはディスプレイサイズより大きくならないため)画像を全て参照することができません。

このエントリーでは、ディスプレイより大きなサイズの画像を全部閲覧できるようにするためのカスタマイズを2つ紹介します。いずれかお好きな方をお選びください。これらは通常のポップアップのカスタマイズとしても利用することができます。

1.ポップアップウィンドウのスクロールやリサイズを有効にする方法

CMS.pm を任意のエディタで開き、「window.open」で検索すると下記の行がみつかります。
ちなみに、3.2 では3600行目あたり、3.3b2 では4700行目辺りです。

<a href="$url" onclick="window.open('$url','popup','width=$width,height=$height,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false">$link</a>

この中の window.open? のカッコの部分がポップアップウィンドウの詳細設定になります。
赤色の部分を下記のように yes に修正します。

<a href="$url" onclick="window.open('$url','popup','width=$width,height=$height,scrollbars=yes,resizable=yes,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false">$link</a>
scrollbars=yes

は、画面サイズにスクロールバーが表示する設定です。

resizable=yes

は、表示されたポップアップウィンドウのリサイズを可能にします。

なお、スクロールバーを表示する設定にした場合、スクロールバーが画像にやや被ってしまうので、下記のリストのように先程修正した行の少し上に青色の行を追加してください。

           :
        }
$width += 17;
        my $link = $thumb ? qq(<img src="$thumb" width="$thumb_width" height="$thumb_height" alt="" />) : q{<MT_TRANS phrase="View image">};
        return $app->translate_templatized(<<"HTML");
<a href="$url" onclick="window.open('$url','popup','width=$width,height=$height,scrollbars=yes,resizable=yes,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false">$link</a>
           :

これでポップアップウィンドウの横幅がやや広くなります。17 という数値は場合は自分で試した結果ですので、修正してもらっても構いません。
高さをひろげたい場合は

$height += xx;

を同じように追加してください(xx には任意の値を設定します)。

カスタマイズ後修正したら元のディレクトリにアップロードしてください。これで画像の表示方法で「ポップアップウィンドウ」を指定した時にスクロールやリサイズが可能になったHTMLコードが表示されます。

2.ポップアップウィンドウに画像を縮小して表示する方法

画像サイズを自動的に縮小するカスタマイズが下記のサイトで紹介されています。

お気楽極楽ブログ画像のポップアップ表示でサイズ制限する

以上です。「見れればいい(というのは語弊がありますが)」という場合は2項、原寸で閲覧させたい場合は1項をお勧めします。

Comments [2] | Trackbacks [3]

ファンコミュニケーションズが「MT-Mobile」と「Affiliate for A8」の提供開始

June 23,2006 2:10 AM
Category:[プラグイン]
Tag:[, ]
Permalink

A8.net で有名なファンコミュニケーションズが、Movable Type 用プラグイン「MT-Mobile」を発表しました。

「MT-Mobile」ニュースリリースより

「MT-Mobile」はウェブログ・システムとして広く利用されているシックス・アパートの「Movable Type(ムーバブル・タイプ)」で作成されたBlogを携帯電話から閲覧可能にするものです。 Movable Typeユーザーがこのプラグインを導入することによって、これまでWEB上でしか閲覧できなかったBlogを、簡単に携帯電話向けとして公開できるようになるため、PC向けのサイト運営者にとって、モバイル向けサイトを容易に立ち上げることが可能になります。

同時に「Affiliate for A8」も発表されています。

「Affiliate for A8」ニュースリリースより

プラグインソフト(Affiliate for A8)はウェブログ・システムとして広く利用されているシックス・アパートの「Movable Type(ムーバブル・タイプ)」にA8.netを利用したアフィリエイトが簡単に行える環境を提供するものです。 Movable Typeユーザーがこのプラグインを導入することによって、Movable Typeのエントリー投稿画面から直接A8.netのプログラムの広告素材を呼び出すことができ、そのままBlogに貼り付けることが可能になります。また、Movable Typeのエントリー投稿画面の操作により、複数の広告素材をBlog上でランダムに表示させることも可能になります。

利用に際しては A8.net に会員登録していることが必要です。またプラグイン申請時には ASID が必要です。

早速 MT-Mobile を試してみました。特に設定はなく、ダウンロードしたアーカイブを解凍して、plugins ディレクトリに配置し、あとは mtm.cgi をURLで指定するだけです。が、Windows 自宅サーバではトップページが表示された後、ブログを選択すると「指定されたサイトは存在しません。(DNS)」というエラーになります。PCブラウザからは読めました。
とりあえずご報告まで。

Comments [0] | Trackbacks [2]

サーバ不具合について

June 23,2006 1:27 AM
Category:[お知らせ]
Tag:[]
Permalink

ページ上部でお知らせしているように、2日前から下記のような 503 エラー(Service Temporarily Unavailable)が発生しており、特にアクセスの多い時間帯はサイトへほとんどつながらない状態が続いています。訪問くださっている皆様には大変ご迷惑をおかけして申し訳ございません。

503 エラー

かく言う私も管理画面で 503 エラーが多発するため、更新がままならない状態です。

503 エラーは「一時的にアクセスが集中している」か「CGIプログラムが誤作動を起こしている」場合に発生するようです。私の方で特にCGIに対して手を加えた記憶はないのですが、念のためページ表示で動作するCGIの一部を停止しています。

それとは別に、先程 top コマンドで確認したところ、異常なプロセスが動作していました。

異常なプロセス

該当のCGIはファイル名を変更して動作しないようにしました。ちなみにこのプロセスを kill しても 503 は解消していません。

ということで、さくらインターネットに問い合わせ中です。

Comments [5] | Trackbacks [0]

最近のコメントのツールチップにコメント内容を表示する(MTCollate版)

June 22,2006 12:58 AM
Category:[最近のコメント]
Tag:[, , ]
Permalink

以前公開した、「最近のコメントのツールチップにコメント内容を表示する」は、デフォルトのMTタグを使用した方法でしたが、本エントリーでは MTCollate プラグインで「最近のコメント」を表示している場合で、さらにコメントのツールチップにコメント内容を表示するカスタマイズを紹介します。

最近のコメントのツールチップにコメント内容を表示する

ここでは「MTCollate を使って「最近のコメント」を表示する」の3.1および3.2のリストを用いて、「最近のコメントのツールチップにコメント内容を表示する」との差分のみを掲載しています。

デフォルトのMTタグを用いたツールチップ表示は、a 要素に

title="<$MTCommentBody remove_html="1" encode_html="1" strip_linefeeds="1" trimj2_to="100">"

という title 属性を与えていますが、MTCollate の場合は

<MTCollateSetField name="comment_body"><$MTCommentBody remove_html="1" encode_html="1" strip_linefeeds="1" trimj2_to="100"$></MTCollateSetField>

という風に、コメント本文を取得する MTCollateSetField を追加し、

title="<$MTCollateField name="comment_body"$>"

をコメントリンクの a 要素に与えています。

以下、上記の内容を加えたリストを掲載しますので、そのままお使いになるか、現在使用されている「最近のコメント」に適宜修正を加えてください。

1.br 要素と "└" でツリー表示している場合

MTCollate を使って「最近のコメント」を表示するの3.1項からの追加部分を青色で示しています。
<MTCollateCollect>
<MTComments lastn="10">
<MTCollateRecord>
<MTCollateSetField name="comment_id"><$MTCommentID$></MTCollateSetField>
<MTCollateSetField name="comment_author"><$MTCommentAuthor encode_html="1"$></MTCollateSetField>
<MTCollateSetField name="comment_date"><$MTCommentDate format="%m/%d"$></MTCollateSetField>
<MTCollateSetField name="comment_body"><$MTCommentBody remove_html="1" encode_html="1" strip_linefeeds="1" trimj2_to="100"$></MTCollateSetField>
<MTCommentEntry>
<MTCollateSetField name="entry_key"><MTComments lastn="1"><$MTCommentDate format="%y%m%d%H%M%S"$></MTComments></MTCollateSetField>
<MTCollateSetField name="entry_link"><$MTEntryPermalink$></MTCollateSetField>
<MTCollateSetField name="entry_title"><$MTEntryTitle encode_html="1"$></MTCollateSetField>
</MTCommentEntry>
</MTCollateRecord>
</MTComments>
</MTCollateCollect>
 
<div class="sidetitle">
Recent Comments
</div>
 
<div class="side">
<MTCollateList sort="entry_key:#:- comment_id:#:+">
<MTCollateIfHeader name="entry_key">
<a href="<$MTCollateField name="entry_link"$>" title="<$MTCollateField name="entry_title"$>"><$MTCollateField name="entry_title"$></a><br /></MTCollateIfHeader>
└ <a href="<$MTCollateField name="entry_link"$>#<$MTCollateField name="comment_id"$>" title="<$MTCollateField name="comment_body"$>"><$MTCollateField name="comment_author"$></a> <$MTCollateField name="comment_date"$><br />
</MTCollateList>
</div>

2.リスト要素(ul -li)で表示している場合

MTCollate を使って「最近のコメント」を表示するの3.2項からの追加部分を青色で示しています。
<MTCollateCollect>
<MTComments lastn="10">
<MTCollateRecord>
<MTCollateSetField name="comment_id"><$MTCommentID$></MTCollateSetField>
<MTCollateSetField name="comment_author"><$MTCommentAuthor encode_html="1"$></MTCollateSetField>
<MTCollateSetField name="comment_date"><$MTCommentDate format="%m/%d"$></MTCollateSetField>
<MTCollateSetField name="comment_body"><$MTCommentBody remove_html="1" encode_html="1" strip_linefeeds="1" trimj2_to="100"$></MTCollateSetField>
<MTCommentEntry>
<MTCollateSetField name="entry_key"><MTComments lastn="1"><$MTCommentDate format="%y%m%d%H%M%S"$></MTComments></MTCollateSetField>
<MTCollateSetField name="entry_link"><$MTEntryPermalink$></MTCollateSetField>
<MTCollateSetField name="entry_title"><$MTEntryTitle encode_html="1"$></MTCollateSetField>
</MTCommentEntry>
</MTCollateRecord>
</MTComments>
</MTCollateCollect>
 
<div class="sidetitle">
Recent Comments
</div>
 
<div class="side">
<MTCollateList sort="entry_key:#:- comment_id:#:+">
<MTCollateIfHeader name="entry_key">
<a href="<$MTCollateField name="entry_link"$>" title="<$MTCollateField name="entry_title"$>"><$MTCollateField name="entry_title"$></a><ul></MTCollateIfHeader>
<li><a href="<$MTCollateField name="entry_link"$>#<$MTCollateField name="comment_id"$>" title="<$MTCollateField name="comment_body"$>"><$MTCollateField name="comment_author"$></a> <$MTCollateField name="comment_date"$></li>
<MTCollateIfFooter name="entry_key"></ul></MTCollateIfFooter>
</MTCollateList>
</div>
Comments [3] | Trackbacks [4]

WEB+DB PRESS Vol.32

June 21,2006 1:35 AM
Category:[書籍]
Tag:[, ]
Permalink

もうすぐ最新号の Vol.33 が発売されますが、現在発売中の「WEB+DB PRESS Vol.32」には「Web2.0 実践テクニック」ということで、

  • 使い倒し Google Homepage API
  • Yahoo! Web サービス活用ガイド
  • RESTアーキテクチャスタイル入門

の3本が掲載されています。

WEB+DB PRESS Vol.32WEB+DB PRESS Vol.32
WEB+DB PRESS編集部

技術評論社 2006-04-25
売り上げランキング : 2730

Amazonで詳しく見る
by G-Tools

Google Personalized Homepage を利用されている方は少なくないと思いますが、Google Homepage API はそこに独自のモジュールを表示させるための API です。記事にはモジュールの基本的な作成方法や、プログラム実行可能なサーバ環境を利用してマイミクシィの最新日記一覧表示取得方法等が掲載されています。

Yahoo! Web サービスは、Yahoo! が提供している検索機能を利用して、例えば検索結果を自サイトに表示させることができるというもの。記事では「ウェブ検索 Web サービス」「画像検索 Web サービス」「動画検索 Web サービス」「カテゴリ Web サービス」「RSS配信サービス」についての利用方法が解説されています。

「RESTアーキテクチャスタイル入門」は、RESTの具体的な利用方法ではなく、基本的な事項について記されたものです。HTTPのPOSTメソッドとGETメソッドの使い分け、リソースおよびHTTPとURIによる統一インタフェースの説明、Cookie と REST の関係、AtomPPプロトコル(GET、POSTにPUTメソッドとDELETEメソッドを加えたものを利用したプロトコル)の解説等、RESTの思想や正しい利用方法が理解できる内容になっており、勉強になりました。

また、404 Blog Not Found でお馴染みの小飼弾さんの「Alpha Geek に逢いたい」という連載も始まっています。

Comments [0] | Trackbacks [0]

月別アーカイブリストのツリー化 for Movable Type

月別アーカイブリストのツリー化ArchiveDateHeader プラグインおよび、昨日公開した ArchiveDateFooter プラグインを利用した、月別アーカイブリストのツリー化カスタマイズを紹介します。

ツリー化にあたっては、公開テンプレートをサンプルに用いて

  1. 各年の月をツリー化
  2. 年と各年の月をツリー化

の2通りの方法を説明しています。いずれかお好きな方を選択してください。またデフォルトテンプレート等、他のテンプレートでも利用可能ですが、ツリー表示についてはスタイルシートの設定を適宜修正して調整してください。

なおツリー化の基本的なカスタマイズについてはサイドメニューのツリー化スクリプト(改)を参照してください。ここでは差分のみを記し、スクリプトおよびツリー画像の設定等については割愛しています。

さらにツリー表示を年毎に折りたたむこともできます。その場合は「月別アーカイブリストの年毎の折りたたみ for Movable Type」をご覧ください。

1.各年の月をツリー化

月別アーカイブリストのツリー化1項では、左のスクリーンショットのように各年の月をツリー化する方法を紹介します。

1.1 テンプレートの修正

月別アーカイブリスト表示したいテンプレートに、下記のタグを設定します。
<div class="side" id="archives">
<MTArchiveList archive_type="Monthly">
<MTArchiveDateHeader><span><$MTArchiveDate format="%Y年"$></span><ul></MTArchiveDateHeader>
<li><a href="<$MTArchiveLink$>"><$MTArchiveDate format="%B月"$></a> [<$MTArchiveCount$>]</li>
<MTArchiveDateFooter></ul></MTArchiveDateFooter>
</MTArchiveList>
</div>
<script type="text/javascript">
<!--
generateNormalTree('archives');
//-->
</script>

1.2 スタイルシートの修正

下記のスタイルを styles-site.css に追加します。
ul.tree {
    margin: 0 0 0 15px!important;
    padding: 0px!important;
    font-size: 9px;
    list-style: none!important;
}
ul.tree ul {
    margin: 0!important;
    padding: 0!important;
    margin-left: 10px!important;
}
ul.tree li {
    margin: 0!important;
    padding: 0 0 0 11px!important;
    background-image: url(tree_lst.gif);
    background-repeat: no-repeat!important;
    list-style: none!important;
}
ul.tree li.end {
    background-image: url(tree_end.gif);
    list-style: none;
}

2.年と各年の月をツリー化

月別アーカイブリストのツリー化2項は各年の月のツリー化だけでなく、年表示部分もツリー化する方法を紹介します。

2.1 テンプレートの修正

月別アーカイブリスト表示したいテンプレートに、下記のタグを設定します。
<div class="side" id="archives">
<ul>
<MTArchiveList archive_type="Monthly">
<MTArchiveDateHeader><li><$MTArchiveDate format="%Y年"$><ul></MTArchiveDateHeader>
<li><a href="<$MTArchiveLink$>"><$MTArchiveDate format="%B月"$></a> [<$MTArchiveCount$>]</li>
<MTArchiveDateFooter></ul></li></MTArchiveDateFooter>
</MTArchiveList>
</ul>
</div>
<script type="text/javascript">
<!--
generateTreeForTreeStructure('archives');
//-->
</script>

2.2 スタイルシートの修正

下記のスタイルを styles-site.css に追加します。
ul.tree {
    margin: 0 0 0 5px!important;
    padding: 0px!important;
    font-size: 9px;
    list-style: none!important;
}
ul.tree ul {
    margin: 0!important;
    padding: 0!important;
    margin-left: 10px!important;
}
ul.tree li {
    margin: 0!important;
    padding: 0 0 0 11px!important;
    background-image: url(tree_lst.gif);
    background-repeat: no-repeat!important;
    list-style: none!important;
}
ul.tree li.end {
    background-image: url(tree_end.gif);
    list-style: none;
}

3.その他

すでに他でツリーの設定を行っている場合は、同じ設定を利用するか、
#archives ul.tree {
     :

という具合に、スタイルシートの該当部分に id 属性を追加して、他の設定と干渉しないようにしてください。

Comments [25] | Trackbacks [5]

ArchiveDateFooter プラグイン

ArchiveDateFooter プラグインMovable Type のプラグインを久しぶりに作成しました。このプラグインを利用することで、月別アーカイブを年別にリスト表示することができます。スクリーンショットはデフォルトテンプレートに適用した例です。
本プラグインは ArchiveDateHeader プラグインとの併用を前提にしています(ArchiveDateFooter 単独でも動作しますが、あまり意味がありません)。

ツリー表示にする場合は、本カスタマイズを実施した後、「月別アーカイブリストの年毎の折りたたみ for Movable Type」を行ってください。

1.機能

このプラグインは、MTArchiveList コンテナ・タグ(archive_type 属性が Monthly/Weekly)の中で、次に表示されるアーカイブと比較し、異なる年あるいは月であったときだけ内容を表示するコンテナ・タグを提供します。
このコンテナ・タグは archive_type 属性が Monthly および Weekly の場合のみ有効です。

2.作成の経緯

既存の ArchiveDateHeader プラグインを用いて、

<MTArchiveList archive_type="Monthly">
<MTArchiveDateHeader>
<p><MTArchiveDate format="%Y"></p>
</MTArchiveDateHeader>
<a href="<$MTArchiveLink$>"><MTArchiveDate format="%B"></a> 
</MTArchiveList>

というリストを設置することで、例えば下記のような月別アーカイブリストを作成できます。

2006
6 5 4 3 2 1
2005
12 11 10 ...

しかしながら、このプラグインがサポートしているのは MTArchiveHeader タグのみのため、例えば月別アーカイブの場合、最後の表示月(上記の場合であれば2006年1月)の後に任意のタグを与えることができません。
したがって ArchiveDateHeader だけではリスト形式(ul -li)のマークアップを行うことができません。

ネットを検索すると、Movable Type Community ForumArchiveDateFooter? に、MTPerlScriptを使ってフッタを生成する記事がありましたが、勉強もかねて今回自作してみました。

3.ダウンロード

下記のリンクより ArchiveDateFooter プラグインアーカイブをダウンロードしてください。

Download(MT3.x)
Download(MT4.0~4.1)
Download(MT4.2)
2006.06.19 初版 2007.01.20 MTArchiveList の sort_order="ascend" に対応 2007.03.19 週別アーカイブでの不具合修正(「ダイナミック・パブリッシング対応 ArchiveDateFooter プラグイン」での指摘を反映)

4.インストール

ダウンロードしたアーカイブを解凍し、ArchiveDateFooter を plugins ディレクトリにアップロードしてください。下記の構成になればOKです。

3.x の場合

plugins/ArchiveDateFooter/ArchiveDateFooter.pl
plugins/ArchiveDateFooter/tmpl/config.tmpl

4.x の場合

plugins/ArchiveDateFooter.pl

メイン・メニュー > システム・メニュー > プラグイン で ArchiveDateFooter Plugin が表示されていればOKです。特に設定する項目はありません。

MT3.x 版でプラグインを使用したくない場合は、各ブログの管理メニューより、「設定」→「プラグイン」→「ArchiveDateFooter Plugin」の右側にある「設定を表示」をクリックして「Configuration」のチェックを外し、「変更を保存」をクリックしてください。

MT4.x 版では「設定を表示」のリンクはありませんので、プラグインを利用しない場合は、システムメニューのプラグイン一覧で ArchiveDateFooter 自体を無効にしてください。

5.使用例

冒頭のスクリーンショットのようなリスト形式の月別アーカイブリスト(年月表示)は、下記のように設定します(サンプルリストはエントリー件数も表示するようにしています)。
<MTArchiveList archive_type="Monthly">
<MTArchiveDateHeader><$MTArchiveDate format="%Y年"$><ul></MTArchiveDateHeader>
<li><a href="<$MTArchiveLink$>"><$MTArchiveDate format="%B月"$></a> [<$MTArchiveCount$>]</li>
<MTArchiveDateFooter></ul></MTArchiveDateFooter>
</MTArchiveList>

月を英語表記にする場合は language属性を追加します。

<MTArchiveList archive_type="Monthly">
<MTArchiveDateHeader><$MTArchiveDate format="%Y"$><ul></MTArchiveDateHeader>
<li><a href="<$MTArchiveLink$>"><$MTArchiveDate format="%B" language="en"$></a> [<$MTArchiveCount$>]</li>
<MTArchiveDateFooter></ul></MTArchiveDateFooter>
</MTArchiveList>

ラップするコンテナタグ MTArchiveList タグで sort_order 属性に acend を設定した場合には MTArchiveDateFooter タグにも同じ属性・属性値を設定してください。

<MTArchiveList archive_type="Monthly" sort_order="ascend">
<MTArchiveDateHeader><$MTArchiveDate format="%Y年"$><ul></MTArchiveDateHeader>
<li><a href="<$MTArchiveLink$>"><$MTArchiveDate format="%B月"$></a> [<$MTArchiveCount$>]</li>
<MTArchiveDateFooter sort_order="ascend"></ul></MTArchiveDateFooter>
</MTArchiveList>

2007.01.20 追記
MTArchiveList の sort_order 属性で ascend が設定された場合に対応しました。

2007.03.19 追記
週別アーカイブでの不具合を修正しました。

2007.07.08 追記
MT4 対応をリリースしました。

2008.07.28 追記
MT4.2 対応をリリースしました。

2008.09.12 追記
MT4.x のアップロード時の構成を追加しました。

Comments [36] | Trackbacks [6]

日本ミルクコミュニティ・とろける杏仁豆腐

June 18,2006 1:03 AM
Category:[mono]
Tag:[]
Permalink

とろける杏仁豆腐日本ミルクコミュニティは「メグミルク」で有名な会社です。この会社が出している「とろける杏仁豆腐」を先日、何気なく購入したところ、かなりの美味でしたので紹介したいと思います。

実はこういった廉価版のデザート類は普段それほど食べませんし、食べたとしても感動を覚えることはまずありません。が、このデザートは一口食べて「美味しい!」と直感的に思った、私にとって久々のヒット商品です。

杏仁豆腐といえばやや弾力のある、プルンとした食感を思い出しますが、この商品はヨーグルトのような柔らかさで、名前の通りとろけるような舌触りが特徴です。そして130円とは思えない本格的な杏仁の味わい。程よい甘さで後味もすっきりしています。

「他社の杏仁豆腐も美味しいのでは?」と思っていくつか試してみましたが(笑)、会社によってそれぞれ味の特徴があり、個人的にはこの「とろける杏仁豆腐」がイチオシです。ネットで調べたところ、この商品は「バニラフレーバーを隠し味に使用」しているようで、これが上品な美味しさ引き立てているのではないでしょうか。

ということで、機会があれば是非一度お試しください。コンビニではミニストップで扱っていました(他のコンビニやスーパーではほとんどみかけませんでした)。

Comments [2] | Trackbacks [1]

Movable Type 3.3 追加タグ一覧

June 17,2006 12:50 AM
Category:[3.3-ja]
Tag:[, ]
Permalink

Movable Type 3.3 で追加されたタグ一覧です。厳密には、Movable Type 3.3マニュアル(ベータ版)で「(タグの)対応しているバージョン」が 3.3から新たに記載されているものを抽出しています(Enterprise1.0 ではすでに利用されているものもあるようです)。

説明文は Movable Type 3.3マニュアル(ベータ版)から引用させて頂いたものに補足しています。

MTBlogPingCount
公開済みの総トラックバック数を表示します。迷惑トラックバック・未公開トラックバックは含まれません。複数のブログを運用している場合、他ブログのトラックバック数は表示しません。
MTEntriesCount
MTEntiresコンテナ内のエントリー数を表示します。categoryをはじめとする各種条件で絞り込みを行った場合、条件に該当するエントリー数を表示します。簡単な例では、 lastn="7" という指定であれば MTEntriesCount は「7」になります。
MTEntryAdditionalCategories
エントリーに指定したカテゴリー一覧を表示するためのコンテナ・タグです。この一覧にはメイン・カテゴリーは含まれません。また、このコンテナ・タグの中では<$MTCategory*$>タグを利用できます。アトリビュートglueを使うと、カテゴリーの区切り文字を指定できます。
MTEntryTags
特定のエントリー内のエントリー・タグ(以下「タグ」)一覧を表示するためのコンテナ・タグです。アトリビュートglueを使うと、タグの区切り文字を指定できます。
MTEntryIfTagged
エントリーにタグが入力されているときに実行する条件タグです。
MTCategoryBasename
カテゴリーのファイル名を表示します。
MTCategoryPrevious
現在のカテゴリーの前のカテゴリーの内容を表示するためのコンテナ・タグです。このタグの中の<MTCategoryLabel>では、前のカテゴリーのタイトルを表示します。このタグを利用することでカテゴリー・アーカイブに前カテゴリーのリンクを表示することができます。
MTCategoryNext
現在のカテゴリーの次のカテゴリーの内容を表示するためのコンテナ・タグです。このタグの中の<MTCategoryLabel>では、次のカテゴリーのタイトルを表示します。このタグを利用することでカテゴリー・アーカイブに次カテゴリーのリンクを表示することができます。
MTIfCategory
コンテキスト内に指定されたカテゴリーが含まれる、またはアクティブなエントリが指定されたカテゴリーに属している場合に有効になる条件タグです。このタグを利用することでカテゴリー毎に見栄えを変えることが可能になります。
MTEntryIfCategory
コンテキスト内に指定されたカテゴリーが含まれる、またはアクティブなエントリが指定されたカテゴリーに属している場合に有効になる条件タグです。MTIfCategoryタグと異なる点は、コンテキスト内のエントリーに対してのみ適用する点です。つまり特定のカテゴリーに属するエントリーの見栄えを変えたりすることができます。
MTCategoryDepth
カテゴリーの階層構造におけるレベル(階層)を表示します。
MTTags
タグの一覧を表示するためのコンテナ・タグです。アトリビュートglueを使うと、タグの区切り文字を指定できます。
MTTagName
特定のタグの名前を表示します。
MTTagID
タグのID番号を表示します。
MTTagCount
特定のブログ内で、指定したタグが含まれるエントリー数を表示します。
MTTagRank
特定のタグの頻度を表示します。数値が小さい方が頻度が高くなります。このテンプレート・タグは、タグ・クラウドを表示する際に利用します。試したところ、1エントリーからの指定では「6」という値になりました。
MTTagSearchLink
特定のブログ内で、指定したタグを付加したエントリーを検索するためのリンクです。タグやタグクラウドからのリンク表示はこれを用います。
MTCommenterIfTrusted
コメント投稿者が登録済みの場合にのみ実行する条件タグです。
MTIfPingsModerated
受け付けたトラックバックについて、即時に公開しない場合に実行する条件タグです。
MTIfStraightSearch
エントリーの検索の場合に実行する条件タグです。これは検索画面制御用(エントリー検索・タグ検索で見栄えを変える)のものです。
MTIfTagSearch
タグ検索(検索というよりは一覧表示)の場合に実行する条件タグです。これは検索画面制御用(エントリー検索・タグ検索で見栄えを変える)のものです。
MTSearchIncludeBlogs
環境設定ファイルmt-config.cgiのIncludeBlogsディレクティブの値を出力します。
MTSearchTemplateID
公開しているブログの検索で利用したテンプレート名を表示します。
MTAdminScript
管理画面のCGIプログラムのファイル名を表示します。MTCGIPathと組み合わせることで、プログラムへのパスを生成できます。
MTHTTPContentType
XML形式の出力における、HTTPヘッダーContent-Typeを設定します。typeアトリビュートに適切なContent-Typeの値を設定します。たとえば、Atom 1.0形式の場合、以下の例のように設定します。
MTProductName
システムの製品名を表示します。
MTSetVarBlock
コンテナ・タグで囲まれた内容を、変数として値を設定します。変数を呼び出すときは、MTGetVarタグを使います。
MTIgnore
指定した範囲について、処理を行わない条件タグです。端的に言うとテンプレート用コメント文に使用します。
Comments [2] | Trackbacks [4]

サイドメニューの折りたたみ(Movable Type デフォルトテンプレート用)

June 16,2006 2:16 AM
Category:[サイドメニュー]
Tag:[, ]
Permalink

当サイトで公開しているサイドメニューの折りたたみを、Movable Type のデフォルトテンプレートで利用する場合、テンプレートおよびスタイルシートはこれまでのエントリーやマニュアルとは異なった修正が必要になります。
ということで、以下に修正方法を記します。menufolder.js 自体の設定は同じですが、ここではブロック指定による折りたたみのみの方法をご紹介します。

注:このエントリーは Movable Type バージョン 3 の内容です

Windows + IE6.0/Firefox1.5/Opera8 で動作を確認しています。サンプルも用意しましたのでお試しください(最近のエントリー/カテゴリー/アーカイブが折りたためます)。

デフォルトテンプレートの折りたたみサンプル

1.各テンプレート

「最近のエントリー」を例に修正前と修正後のタグを示します。修正対象を赤色、修正後または追加部分を青色で示しています。

修正前

<div class="module-archives module">
   <h2 class="module-header">最近のエントリー</h2>
   <div class="module-content">
          :
         (中略)
          :
   </div>
</div>

修正後

<div class="module-archives module2">
   <h2 class="module-header2" id="entryname">最近のエントリー</h2>
   <div class="module-content" id="entrylist">
          :
         (中略)
          :
   </div>
</div>

アーカイブ(月別アーカイブ)に適用する場合は、タイトルのリンク

<h2 class="module-header"><a href="<$MTBlogURL$>archives.html">アーカイブ</a></h2>

を削除してください。

2.スタイルシート

下記を styles-site.css の最後に追加してください。

.module2 {
    margin: 0 0 10px 0;
    border-bottom: 1px solid #f3f6f9;
    background: #dae0e6;
    overflow: hidden;
    width: 100%;
}
 
.module-header2 {
    width: auto;
    margin: 0;
    padding: 0;
    border-left: 5px solid #36414d;
    font-weight: bold;
    background: #a3b8cc;
}
 
.module-header2 a {
    width: auto;
}
 
.module-header2 a:link,
.module-header2 a:visited {
    display: block;
    padding: 5px;
    _padding: 3px 0 3px 5px;
    color:#ffffff;
    font-size:11px;
}
 
.module-header2 a:hover {
    padding: 5px;
    _padding: 3px 0 3px 5px;
    color:#ffffff;
    background: #999999;
    font-size:11px;
}

配色は適宜修正してください。

Comments [32] | Trackbacks [0]

phpMyAdmin のアップロードファイルサイズを変更する

June 15,2006 12:30 AM
Category:[MySQL]
Tag:[, ]
Permalink

MySQL + phpMyAdmin によるバックアップで「phpMyAdmin によるバックアップファイルのアップロードサイズに制限がある」と書きましたが、自宅サーバ(Apache)等、管理者権限があれば、このサイズを簡単に変更することができます。

変更前変更前のサイズは2048KBです。

この最大サイズを変更するには、php.ini にある下記の行

php_value upload_max_filesize 2M

の赤色部分を次のように修正します。

php_value upload_max_filesize 8M
変更前これで Apache を再起動すると、最大サイズが変更されます(例は8192KB)。

さらにサイズを拡大する場合は、php.ini の

memory_limit
post_max_size
upload_max_filesize

の関係が

memory_limit > post_max_size > upload_max_filesize

となるように、それぞれ値を変更する必要があります(実際には同値でもOK)。

参考サイトは下記です。

設定ディレクティブ
添付ファイルのアップロードサイズの制限を変更したい
Comments [0] | Trackbacks [2]

Authen::Captcha をインストールして Captcha Plugin を利用する(CPAN による perl モジュールのインストール)

June 14,2006 1:50 AM
Category:[コメント]
Tag:[, , , , ]
Permalink

レンタルサーバに perl モジュールをインストールする方法を紹介します。

レンタルサーバでは Ogawa::memoranda さんの Captcha プラグインの動作に必要な Authen::Captcha モジュールがインストールされていないケースが少なくないようです(GD はインストールされているという前提)。またネットを検索してみても、一般的な perl モジュールのインストール方法は記されているのですが、そこに Authen::Captcha のインストールについて記されている訳ではないのでお互いの情報が結びつかず、perl に精通していない方が検索エンジンから方法を探し出すのは困難なようです。

ということで、Windows マシンからレンタルサーバにログインして、perl モジュール Authen::Captcha をインストールする方法、およびプラグインの修正について記します。私が実施したのは「さくらインターネット」です。
なおレンタルサーバで telnet/SSH がサポートされていない場合は Perl モジュールをインストールすることはできませんのでご注意ください(Movable Type向きのレンタルサーバー比較等で telnet/ssh のサポート状況が分かります)。

1.UTF-8 TeraTerm Pro with TTSSH2 のインストール

レンタルサーバをお使いの方は FFFTP 等の ftp ツールはよくご存知と思いますが、Perl もジュールをインストールするためには telnet または ssh でサーバと通信するためのツールが必要です。

ここでは TeraTerm Pro を利用します。窓の社にある UTF-8 TeraTerm Pro with TTSSH2 をダウンロードしてインストールしてください。

2.サーバにログイン

サーバにログインします。インストールした Teraterm を起動して、表示されたダイアログで下記の設定をしてください。

  • TCP/IP:ここを選択
  • Host: サーバのホスト名(ftp のホスト名と同じ)
  • Service: Telnet/SSH(SSH1 or SSH2)のいずれかを選択(接続するプロトコルはレンタルサーバに確認してください)
  • 他はデフォルトのまま

接続OKであれば、ダイアログが閉じてメイン画面で次のようなプロンプトが表示されます。

login:

ここでは ftp のユーザ名を入力します。OKであれば

Password:

と表示されますので、ftp のパスワードを入力します。入力したパスワードは画面に表示されませんが、焦らずにそのまま入力してください。

OKであれば

Last login: Tue Jun 13 23:39:27 from xxx.xxx.xxx.xxx
Copyright (c) 1980, 1983, 1986, 1988, 1990, 1991, 1993, 1994
    The Regents of the University of California.  All rights reserved.
 
FreeBSD 4.10-RELEASE-p19 (xxxxxxx) #x: Sun Nov 27 11:46:21 JST 2005
 
// Sakura internet rental server service
 
%

というようなログイン成功画面が表示されます(表示画面はレンタルサーバによって異なります)。

この状態で

%ls -l

と入力すると、既に存在するファイルがいくつか表示されると思います。

3.perl ディレクトリの作成

レンタルサーバ側で用意してくれている Perl モジュールは、我々が書き込める権限のないディレクトリに配置されていますので、個人環境に Perl モジュールをインストールするためのディレクトリを作成します。

下記のコマンドを入力して perl というディレクトリを作成します。

%mkdir perl

4.perl モジュールインストールの前準備

これはあなたにサーバの管理者権限がない場合、CPAN を利用するための自分用の設定値をもったファイルを作る作業です。 この作業がある意味一番やっかい(というかなんとなく不安)ですので、この項に掲載しているメッセージや下記のリンク先の情報等を参考にゆっくり進めてください。

それではまず、3項の画面で以下のコマンドを入力してください。

%perl -MCPAN -e shell

このコマンドを初めて起動した場合、以下のようなメッセージが表示されます。

/home/hogehoge/.cpan/CPAN/MyConfig.pm initialized.
 
 
CPAN is the world-wide archive of perl resources. It consists of about
100 sites that all replicate the same contents all around the globe.
Many countries have at least one CPAN site already. The resources
found on CPAN are easily accessible with the CPAN.pm module. If you
want to use CPAN.pm, you have to configure it properly.
 
If you do not want to enter a dialog now, you can answer 'no' to this
question and I'll try to autoconfigure. (Note: you can revisit this
dialog anytime later by typing 'o conf init' at the cpan prompt.)
 
Are you ready for manual configuration? [yes]

ここでリターンを1回だけ入力します。入力すると次の質問が表示されます。これと同じ要領で、表示された質問に対して回答するという対話形式で作業を進めていきます。

以下、この作業で表示されるメッセージをまとめて掲載します。質問部分は赤色、入力部分は青色で示しています。青色の入力がない行はそのままリターンを入力してください。リターンのみの場合は、[]の中に書かれている内容が設定値として反映されます(上記のメッセージの場合は yes が入力されたものと解釈されます)。

The following questions are intended to help you with the
configuration. The CPAN module needs a directory of its own to cache
important index files and maybe keep a temporary mirror of CPAN files.
This may be a site-wide directory or a personal directory.
 
 
 
I see you already have a  directory
  /home/hogehoge/.cpan
Shall we use it as the general CPAN build and cache directory?
 
CPAN build and cache directory? [/home/hogehoge/.cpan]
 
 
If you want, I can keep the source files after a build in the cpan
home directory. If you choose so then future builds will take the
files from there. If you don't want to keep them, answer 0 to the
next question.
 
 
 
How big should the disk cache be for keeping the build directories
with all the intermediate files?
 
Cache size for build directory (in MB)? [10]
 
 
By default, each time the CPAN module is started, cache scanning
is performed to keep the cache size in sync. To prevent from this,
disable the cache scanning with 'never'.
 
Perform cache scanning (atstart or never)? [atstart]
 
 
To considerably speed up the initial CPAN shell startup, it is
possible to use Storable to create a cache of metadata. If Storable
is not available, the normal index mechanism will be used.
 
Cache metadata (yes/no)? [yes]
 
 
The next option deals with the charset your terminal supports. In
general CPAN is English speaking territory, thus the charset does not
matter much, but some of the aliens out there who upload their
software to CPAN bear names that are outside the ASCII range. If your
terminal supports UTF-8, you say no to the next question, if it
supports ISO-8859-1 (also known as LATIN1) then you say yes, and if it
supports neither nor, your answer does not matter, you will not be
able to read the names of some authors anyway. If you answer no, names
will be output in UTF-8.
 
Your terminal expects ISO-8859-1 (yes/no)? [yes]
 
 
If you have one of the readline packages (Term::ReadLine::Perl,
Term::ReadLine::Gnu, possibly others) installed, the interactive CPAN
shell will have history support. The next two questions deal with the
filename of the history file and with its size. If you do not want to
set this variable, please hit SPACE RETURN to the following question.
 
File to save your history? [/home/hogehoge/.cpan/histfile]
Number of lines to save? [100]
 
 
The CPAN module can detect when a module that which you are trying to
build depends on prerequisites. If this happens, it can build the
prerequisites for you automatically ('follow'), ask you for
confirmation ('ask'), or just ignore them ('ignore'). Please set your
policy to one of the three values.
 
Policy on building prerequisites (follow, ask or ignore)? [ask]
 
 
The CPAN module will need a few external programs to work properly.
Please correct me, if I guess the wrong path for a program. Don't
panic if you do not have some of them, just press ENTER for those. To
disable the use of a download program, you can type a space followed
by ENTER.
 
Where is your gzip program? [/usr/bin/gzip]
Where is your tar program? [/usr/bin/tar]
Where is your unzip program? [/usr/local/bin/unzip]
Where is your make program? [/usr/bin/make]
Where is your lynx program? [/usr/local/bin/lynx]
Where is your wget program? [/usr/local/bin/wget]
Warning: ncftpget not found in PATH
Where is your ncftpget program? []
Warning: ncftp not found in PATH
Where is your ncftp program? []
Where is your ftp program? [/usr/bin/ftp]
Warning: gpg not found in PATH
Where is your gpg program? []
What is your favorite pager program? [more]
What is your favorite shell? [/bin/csh]
 
 
Every Makefile.PL is run by perl in a separate process. Likewise we
run 'make' and 'make install' in processes. If you have any
parameters (e.g. PREFIX, LIB, UNINST or the like) you want to pass
to the calls, please specify them here.
 
If you don't understand this question, just press ENTER.
 
Parameters for the 'perl Makefile.PL' command?
Typical frequently used settings:
 
  PREFIX=~/perl    non-root users (please see manual for more hints)
 
Your choice:  []
Parameters for the 'make' command?
Typical frequently used setting:
 
  -j3       dual processor system
 
Your choice:  []
Parameters for the 'make install' command?
Typical frequently used setting:
 
  UNINST=1     to always uninstall potentially conflicting files
 
Your choice:  []
 
 
Sometimes you may wish to leave the processes run by CPAN alone
without caring about them. As sometimes the Makefile.PL contains
question you're expected to answer, you can set a timer that will
kill a 'perl Makefile.PL' process after the specified time in seconds.
 
If you set this value to 0, these processes will wait forever. This is
the default and recommended setting.
 
Timeout for inactivity during Makefile.PL? [0]
 
 
If you're accessing the net via proxies, you can specify them in the
CPAN configuration or via environment variables. The variable in
the $CPAN::Config takes precedence.
 
Your ftp_proxy?
Your http_proxy?
Your no_proxy?
You have no /home/hogehoge/.cpan/sources/MIRRORED.BY
  I'm trying to fetch one
CPAN: LWP::UserAgent loaded ok
Fetching with LWP:
 ftp://ftp.perl.org/pub/CPAN/MIRRORED.BY
 
 
Now we need to know where your favorite CPAN sites are located. Push
a few sites onto the array (just in case the first on the array won't
work). If you are mirroring CPAN to your local workstation, specify a
file: URL.
 
First, pick a nearby continent and country (you can pick several of
each, separated by spaces, or none if you just want to keep your
existing selections). Then, you will be presented with a list of URLs
of CPAN mirrors in the countries you selected, along with previously
selected URLs. Select some of those URLs, or just keep the old list.
Finally, you will be prompted for any extra URLs -- file:, ftp:, or
http: -- that host a CPAN mirror.
 
(1) Africa
(2) Asia
(3) Central America
(4) Europe
(5) North America
(6) Oceania
(7) South America
Select your continent (or several nearby continents) [] 2
Sorry! since you don't have any existing picks, you must make a
geographic selection.
 
(1) China
(2) Hong Kong
(3) India
(4) Indonesia
(5) Iran
(6) Israel
(7) Japan
(8) Malaysia
(9) Philippines
(10) Republic of Korea
(11) Russian Federation
(12) Saudi Arabia
(13) Singapore
(14) Taiwan
(15) Thailand
(16) Turkey
Select your country (or several nearby countries) [] 7
Sorry! since you don't have any existing picks, you must make a
geographic selection.
 
(1) ftp://ftp.dti.ad.jp/pub/lang/CPAN/
(2) ftp://ftp.jaist.ac.jp/pub/lang/perl/CPAN/
(3) ftp://ftp.kddilabs.jp/CPAN/
(4) ftp://ftp.nara.wide.ad.jp/pub/CPAN/
(5) ftp://ftp.ring.gr.jp/pub/lang/perl/CPAN/
(6) ftp://ftp.u-aizu.ac.jp/pub/CPAN
(7) ftp://ftp.yz.yamagata-u.ac.jp/pub/lang/cpan/
(8) http://ftp.cpan.jp/
Select as many URLs as you like (by number),
put them on one line, separated by blanks, e.g. '1 4 5' [] 1 2 3 4 5 6 7 8 注:すべて選択する必要はありません
 
Enter another URL or RETURN to quit: []
New set of picks:
  ftp://ftp.dti.ad.jp/pub/lang/CPAN/
  ftp://ftp.jaist.ac.jp/pub/lang/perl/CPAN/
  ftp://ftp.kddilabs.jp/CPAN/
  ftp://ftp.nara.wide.ad.jp/pub/CPAN/
  ftp://ftp.ring.gr.jp/pub/lang/perl/CPAN/
  ftp://ftp.u-aizu.ac.jp/pub/CPAN
  ftp://ftp.yz.yamagata-u.ac.jp/pub/lang/cpan/
  http://ftp.cpan.jp/
 
 
commit: wrote /home/hogehoge/.cpan/CPAN/MyConfig.pm
Terminal does not support AddHistory.
 
cpan shell -- CPAN exploration and modules installation (v1.7601)
ReadLine support available (try 'install Bundle::CPAN')
 
cpan>

お疲れ様でした。最後に「cpan>」という入力要求(プロンプト)が出ますので、ここではとりあえず "q" を入力して一旦終了します。

cpan> q
Terminal does not support GetHistory.
Lockfile removed.

再度、最初の perl コマンドを入力します。

%perl -MCPAN -e shell
Terminal does not support AddHistory.
 
cpan shell -- CPAN exploration and modules installation (v1.7601)
ReadLine support available (try 'install Bundle::CPAN')
 
cpan>

ここで、3項で作ったディレクトリに perl モジュールがインストールできるようにするためにコマンドを入力します。

cpan> o conf makepl_arg "LIB=~/perl/lib PREFIX=~/perl/lib INSTALLMAN1DIR=~/perl/man/man1 INSTALLMAN3DIR=~/perl/man/man3"
    makepl_arg         LIB=~/perl/lib PREFIX=~/perl/lib INSTALLMAN1DIR=~/perl/man/man1 INSTALLMAN3DIR=~/perl/man/man3

上記は、さくらインターネットのFAQの内容(それはCPANのドキュメントに基づいています)をそのまま入力しています。ちなみにさくらインターネットのFAQでは4項の作業が記されていません。

そして上記の設定を今後も有効にするために以下のコマンドを入力します。

cpan> o conf commit
commit: wrote /home/hogehoge/.cpan/CPAN/MyConfig.pm

これで perl モジュールをインストールできる準備ができました。

5.perl モジュールのインストール

次のコマンドを入力して、Authen::Captcha をインストールしましょう。

cpan>install Authen::Captcha

私がインストールした時のログは下記です。
正常であればここでかなり長大なログが表示されると思います。

cpan> install Authen::Captcha
CPAN: Storable loaded ok
CPAN: LWP::UserAgent loaded ok
Fetching with LWP:
  ftp://ftp.dti.ad.jp/pub/lang/CPAN/authors/01mailrc.txt.gz
Going to read /home/hogehoge/.cpan/sources/authors/01mailrc.txt.gz
CPAN: Compress::Zlib loaded ok
Fetching with LWP:
  ftp://ftp.dti.ad.jp/pub/lang/CPAN/modules/02packages.details.txt.gz
Going to read /home/hogehoge/.cpan/sources/modules/02packages.details.txt.gz
  Database was generated on Thu, 11 Jan 2007 06:26:25 GMT
 
  There's a new CPAN.pm version (v1.8802) available!
  [Current version is v1.7602]
  You might want to try
    install Bundle::CPAN
    reload cpan
  without quitting the current session. It should be a seamless upgrade
  while we are running...
 
Fetching with LWP:
  ftp://ftp.dti.ad.jp/pub/lang/CPAN/modules/03modlist.data.gz
Going to read /home/hogehoge/.cpan/sources/modules/03modlist.data.gz
Going to write /home/hogehoge/.cpan/Metadata
Running install for module Authen::Captcha
Running make for U/UN/UNRTST/Authen-Captcha-1.023.tar.gz
Fetching with LWP:
  ftp://ftp.dti.ad.jp/pub/lang/CPAN/authors/id/U/UN/UNRTST/Authen-Captcha-1.023.tar.gz
CPAN: Digest::MD5 loaded ok
Fetching with LWP:
  ftp://ftp.dti.ad.jp/pub/lang/CPAN/authors/id/U/UN/UNRTST/CHECKSUMS
Checksum for /home/hogehoge/.cpan/sources/authors/id/U/UN/UNRTST/Authen-Captcha-1.023.tar.gz ok
Scanning cache /home/hogehoge/.cpan/build for sizes
x Authen-Captcha-1.023/
x Authen-Captcha-1.023/Captcha/
x Authen-Captcha-1.023/Captcha/images/
x Authen-Captcha-1.023/Captcha/images/w.png
x Authen-Captcha-1.023/Captcha/images/background4.png
x Authen-Captcha-1.023/Captcha/images/8.png
x Authen-Captcha-1.023/Captcha/images/k.png
x Authen-Captcha-1.023/Captcha/images/x.png
x Authen-Captcha-1.023/Captcha/images/background5.png
x Authen-Captcha-1.023/Captcha/images/9.png
x Authen-Captcha-1.023/Captcha/images/l.png
x Authen-Captcha-1.023/Captcha/images/y.png
x Authen-Captcha-1.023/Captcha/images/m.png
x Authen-Captcha-1.023/Captcha/images/z.png
x Authen-Captcha-1.023/Captcha/images/a.png
x Authen-Captcha-1.023/Captcha/images/n.png
x Authen-Captcha-1.023/Captcha/images/b.png
x Authen-Captcha-1.023/Captcha/images/o.png
x Authen-Captcha-1.023/Captcha/images/c.png
x Authen-Captcha-1.023/Captcha/images/p.png
x Authen-Captcha-1.023/Captcha/images/d.png
x Authen-Captcha-1.023/Captcha/images/q.png
x Authen-Captcha-1.023/Captcha/images/2.png
x Authen-Captcha-1.023/Captcha/images/e.png
x Authen-Captcha-1.023/Captcha/images/r.png
x Authen-Captcha-1.023/Captcha/images/3.png
x Authen-Captcha-1.023/Captcha/images/f.png
x Authen-Captcha-1.023/Captcha/images/s.png
x Authen-Captcha-1.023/Captcha/images/Thumbs.db
x Authen-Captcha-1.023/Captcha/images/4.png
x Authen-Captcha-1.023/Captcha/images/g.png
x Authen-Captcha-1.023/Captcha/images/t.png
x Authen-Captcha-1.023/Captcha/images/background1.png
x Authen-Captcha-1.023/Captcha/images/5.png
x Authen-Captcha-1.023/Captcha/images/h.png
x Authen-Captcha-1.023/Captcha/images/u.png
x Authen-Captcha-1.023/Captcha/images/CVS/
x Authen-Captcha-1.023/Captcha/images/CVS/Root
x Authen-Captcha-1.023/Captcha/images/CVS/Repository
x Authen-Captcha-1.023/Captcha/images/CVS/Entries
x Authen-Captcha-1.023/Captcha/images/background2.png
x Authen-Captcha-1.023/Captcha/images/6.png
x Authen-Captcha-1.023/Captcha/images/i.png
x Authen-Captcha-1.023/Captcha/images/v.png
x Authen-Captcha-1.023/Captcha/images/background3.png
x Authen-Captcha-1.023/Captcha/images/7.png
x Authen-Captcha-1.023/Captcha/images/j.png
x Authen-Captcha-1.023/MANIFEST
x Authen-Captcha-1.023/Captcha.pm
x Authen-Captcha-1.023/Changes
x Authen-Captcha-1.023/t/
x Authen-Captcha-1.023/t/1.t
x Authen-Captcha-1.023/README
x Authen-Captcha-1.023/examples/
x Authen-Captcha-1.023/examples/wwwtest.cgi
x Authen-Captcha-1.023/examples/README
x Authen-Captcha-1.023/license.txt
x Authen-Captcha-1.023/Makefile.PL
 
  CPAN.pm: Going to build U/UN/UNRTST/Authen-Captcha-1.023.tar.gz
 
Checking if your kit is complete...
Looks good
Writing Makefile for Authen::Captcha
cp Captcha/images/8.png blib/lib/Authen/Captcha/images/8.png
cp Captcha/images/s.png blib/lib/Authen/Captcha/images/s.png
cp Captcha/images/a.png blib/lib/Authen/Captcha/images/a.png
cp Captcha/images/l.png blib/lib/Authen/Captcha/images/l.png
cp Captcha/images/z.png blib/lib/Authen/Captcha/images/z.png
cp Captcha/images/5.png blib/lib/Authen/Captcha/images/5.png
cp Captcha/images/b.png blib/lib/Authen/Captcha/images/b.png
cp Captcha/images/9.png blib/lib/Authen/Captcha/images/9.png
cp Captcha/images/4.png blib/lib/Authen/Captcha/images/4.png
cp Captcha/images/6.png blib/lib/Authen/Captcha/images/6.png
cp Captcha/images/background2.png blib/lib/Authen/Captcha/images/background2.png
cp Captcha/images/c.png blib/lib/Authen/Captcha/images/c.png
cp Captcha/images/g.png blib/lib/Authen/Captcha/images/g.png
cp Captcha/images/v.png blib/lib/Authen/Captcha/images/v.png
cp Captcha/images/y.png blib/lib/Authen/Captcha/images/y.png
cp Captcha/images/u.png blib/lib/Authen/Captcha/images/u.png
cp Captcha/images/q.png blib/lib/Authen/Captcha/images/q.png
cp Captcha/images/p.png blib/lib/Authen/Captcha/images/p.png
cp Captcha/images/3.png blib/lib/Authen/Captcha/images/3.png
cp Captcha/images/background4.png blib/lib/Authen/Captcha/images/background4.png
cp Captcha/images/d.png blib/lib/Authen/Captcha/images/d.png
cp Captcha/images/h.png blib/lib/Authen/Captcha/images/h.png
cp Captcha/images/background3.png blib/lib/Authen/Captcha/images/background3.png
cp Captcha/images/n.png blib/lib/Authen/Captcha/images/n.png
cp Captcha/images/o.png blib/lib/Authen/Captcha/images/o.png
cp Captcha/images/f.png blib/lib/Authen/Captcha/images/f.png
cp Captcha/images/Thumbs.db blib/lib/Authen/Captcha/images/Thumbs.db
cp Captcha.pm blib/lib/Authen/Captcha.pm
cp Captcha/images/2.png blib/lib/Authen/Captcha/images/2.png
cp Captcha/images/j.png blib/lib/Authen/Captcha/images/j.png
cp Captcha/images/x.png blib/lib/Authen/Captcha/images/x.png
cp Captcha/images/background5.png blib/lib/Authen/Captcha/images/background5.png
cp Captcha/images/k.png blib/lib/Authen/Captcha/images/k.png
cp Captcha/images/7.png blib/lib/Authen/Captcha/images/7.png
cp Captcha/images/e.png blib/lib/Authen/Captcha/images/e.png
cp Captcha/images/i.png blib/lib/Authen/Captcha/images/i.png
cp Captcha/images/w.png blib/lib/Authen/Captcha/images/w.png
cp Captcha/images/m.png blib/lib/Authen/Captcha/images/m.png
cp Captcha/images/r.png blib/lib/Authen/Captcha/images/r.png
cp Captcha/images/t.png blib/lib/Authen/Captcha/images/t.png
cp Captcha/images/background1.png blib/lib/Authen/Captcha/images/background1.png
Manifying blib/man3/Authen::Captcha.3
  /usr/bin/make  -- OK
Running make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.tt/1....ok
All tests successful.
Files=1, Tests=32,  0 wallclock secs ( 0.05 cusr +  0.02 csys =  0.07 CPU)
  /usr/bin/make test -- OK
Running make install
Installing /home/hogehoge/perl/lib/Authen/Captcha.pm
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/8.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/s.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/a.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/l.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/z.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/5.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/b.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/9.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/4.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/6.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/background2.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/c.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/g.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/v.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/y.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/u.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/q.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/p.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/3.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/background4.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/d.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/h.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/background3.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/n.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/o.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/f.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/Thumbs.db
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/2.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/j.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/x.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/background5.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/k.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/7.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/e.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/i.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/w.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/m.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/r.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/t.png
Installing /home/hogehoge/perl/lib/Authen/Captcha/images/background1.png
Installing /home/hogehoge/perl/lib/lib/perl5/5.8.8/man/man3/Authen::Captcha.3
Writing /home/hogehoge/perl/lib/i386-freebsd-64int/auto/Authen/Captcha/.packlist
FreeBSD: Registering installation in the package database
FreeBSD: Cannot determine module description
Cannot create directory /home/hogehoge/db/pkg/bsdpan-Authen-Captcha-1.023: No such file or directory
Appending installation info to /home/hogehoge/perl/lib/i386-freebsd-64int/perllocal.pod
  /usr/bin/make install  -- OK

初回インストールであれば最後に「install -- OK」というメッセージが表示されます。
これで "q" を入力してモジュールのインストール作業を終了します。

cpan> q
Terminal does not support GetHistory.
Lockfile removed.

ちなみにモジュールはアップデートもできます。そのログは下記です。

cpan> install Authen::Captcha
CPAN: Storable loaded ok
Going to read /home/hogehoge/.cpan/Metadata
  Database was generated on Wed, 24 May 2006 04:27:41 GMT
CPAN: LWP::UserAgent loaded ok
Fetching with LWP:
  ftp://ftp.dti.ad.jp/pub/lang/CPAN/authors/01mailrc.txt.gz
Going to read /home/hogehoge/.cpan/sources/authors/01mailrc.txt.gz
CPAN: Compress::Zlib loaded ok
Fetching with LWP:
 ftp://ftp.dti.ad.jp/pub/lang/CPAN/modules/02packages.details.txt.gz
Going to read /home/hogehoge/.cpan/sources/modules/02packages.details.txt.gz
 Database was generated on Tue, 13 Jun 2006 03:28:25 GMT
 
 There's a new CPAN.pm version (v1.87) available!
 [Current version is v1.7601]
 You might want to try
  install Bundle::CPAN
  reload cpan
 without quitting the current session. It should be a seamless upgrade
 while we are running...
 
Fetching with LWP:
 ftp://ftp.dti.ad.jp/pub/lang/CPAN/modules/03modlist.data.gz
Going to read /home/hogehoge/.cpan/sources/modules/03modlist.data.gz
Going to write /home/hogehoge/.cpan/Metadata
Authen::Captcha is up to date.
 
cpan>

perl モジュールのインストールについては、google 等の検索エンジンで

perl cpan インストール
perl cpan モジュール

のキーワードで捜せば色々みつかると思います。私はこのエントリーに書いている以外の情報はありませんので、質問する前にネットで検索してみてください。

6.captcha.pl の修正

perl モジュールのインストール目当てにこのエントリーをご覧になっている方は5項で終了です。Captcha プラグインを利用される方はまだ続きます(笑)。

無事 perl モジュールはインストールされましたが、肝心の Captcha プラグインはインストールしたディレクトリを参照するように作られていません。したがってここでは Captcha プラグインから インストールディレクトリを参照する設定を追加します。

plugins/captcha/captcha.pl をダウンロードして任意のエディタで開き、下記の青色の1行を追加してください。

# Captcha - A simple plugin for commenting with CAPTCHA test.
#
# $Id: captcha.pl 212 2006-05-18 17:20:14Z ogawa $
#
# This software is provided as-is. You may use it for commercial or 
# personal use. If you distribute it, please keep this notice intact.
#
# Copyright (c) 2006 Hirotaka Ogawa
 
package MT::Plugin::Captcha;
 
use lib qw(/home/hogehoge/perl/lib);
use strict;
use MT;
use MT::Template::Context;
use File::Spec;
use File::Basename;
use Authen::Captcha;
use base 'MT::Plugin';
our $VERSION = '0.02';
       :

赤色の部分は、3項で作成した perl ディレクトリの下の lib というディレクトリまでの絶対パスを入力します。絶対パスが分からない場合は Teraterm でログインして、下記のコマンドを入力してください。

%cd perl/lib
%pwd
/home/hogehoge/perl/lib
%

上記の赤色部分が絶対パスになります。

captcha.pl を修正したら保存し、元のディレクトリにアップロードしてください。

7.captcha_js.cgi の修正

6項と同様、captcha_js.cgi に青色の行を追加してください。

#!/usr/bin/perl
#
# $Id: captcha_js.cgi 212 2006-05-18 17:20:14Z ogawa $
#
use lib qw(/home/hogehoge/perl/lib);
use Authen::Captcha;
use CGI;

赤色の部分は、3項で作成した perl ディレクトリの下の lib というディレクトリまでの絶対パスを入力します。

captcha_js.cgi を修正したら保存し、元のディレクトリにアップロードしてください。このファイルについてはパーミッションの変更(755 等)を忘れないようにしてください。

以上です。すべての作業が正常に行われていれば Captcha プラグインが動作すると思います。

2006.12.31 追記
7項を追加しました(記述もれでした、すいません)。

Comments [15] | Trackbacks [8]

Movable Type 3.3 ベータ2公開

June 13,2006 11:39 AM
Category:[3.3-ja]
Tag:[]
Permalink

Six Apart で Movable Type 3.3 のベータ2が公開されました。

Movable Type 3.3 ベータ2 を公開

Movable Type 3.3 ベータ2を公開しました。米国Six Apart, Ltd上の公式ベータサイトより、日本語版をダウンロードできます。

ベータ2で StyleCatcher が同梱され、GoogleSearch プラグインが加わっています。プラグインの説明では

Googleの検索結果を保持するテンプレートタグを追加します。このプラグインを利用するためにはライセンスキーが必要です。

となっています。
このプラグインは MTGoogleSearch/MTGoogleSearchResult タグを利用できるものですが、タグ自体は 3.2 から存在するものです。

ベータ2は下記のページよりダウンロードできます。

Movable Type 3.3

リリースノートは下記です。

Release notes

Comments [0] | Trackbacks [2]

ブログ開設2周年記念・TB企画御礼

June 13,2006 12:55 AM
Category:[blog]
Tag:[, ]
Permalink

先日の「ブログ開設2周年記念・【TB企画】あなたのサイトのお勧めエントリー」に多くのトラックバックをお送りくださり、ありがとうございました。合計14サイト様より頂きました。この場をお借りして改めてお礼申し上げます。
またお勧めエントリーの方も楽しく拝見させて頂きました。

ということで予告通り、本エントリーにてトラックバックをくださったサイト、そしてお勧めエントリーを、キャプチャ画像付きでトラックバック受信順に紹介させて頂きます。画像リンクは各サイトのトップページにジャンプします。気の利いたコメントが書ければいいのですが、ご勘弁ください。

.Fav(blog).Fav(blog)
コメントスパム対策(SCode版)
コメントスパム対策(SCode版) アップデート
今日は いい日今日は いい日
ワンニャンコンビの2ショット3態
Atelier Shuhei WeblogAtelier Shuhei Weblog
<鶯(bush warblers)来鳴きて・・>
ネタを探して2万マイル!?ネタを探して2万マイル!?
ページ分割してみました。(検索結果ページ)
『Fear ウルフ の 住処』の日記まとめ
今日はただの火曜日です。
糞運営を抽出したり、電波検索を行う検索エンジンサイトを比較。
ハレ晴れユカイの振り付け解説を画像込みでやってみた。
え、マジ? 俺に訪れた横浜中華街デートの日!?
Document_Not_Bound...Document_Not_Bound...
“京浜東北線・・・車内での恐怖。(ノンオカルト)”
ChieLogChieLog
【TB企画】お気に入りエントリー
FivestarFivestar
#110 - ソバについて延々と
Music AddictMusic Addict
第48回グラミー賞発表!!U2主要2部門を含む5冠!(2006.02.11)
PARADISE BLOGPARADISE BLOG
久し振りの更新です。
hakuro.info bloghakuro.info blog
ノートPCに酒を飲ませてみる
チームニゴイでございます。チームニゴイでございます。
ブログ化のテストです(^O^)
caramel*vanillacaramel*vanilla
WordPress vs Movable Type
引用のHTMLの記述について考えてみた
blogのユーザビリティについて考えてみた
del.icio.us skin - No.1
路上の風景?landscapes on the road路上の風景?landscapes on the road
コメントするということ|comment(1)
絶滅の危機に瀕した伝統芸能「お役所仕事」
☆Starlit Sky☆☆Starlit Sky☆
MTのキーワードタグでlilboxの検索をする方法
Comments [7] | Trackbacks [0]

MySQL + phpMyAdmin によるバックアップ

June 12,2006 12:50 AM
Category:[MySQL]
Tag:[, , , ]
Permalink

Movable Type 等のブログツールを MySQL で運用している場合、管理画面の「書き出し」とは別に、データベース(以下DB)からバックアップを取得することができます。
Movable Type を例に挙げると両者の違いは次の通りです。

 書き出しDBバックアップ
バックアップ対象エントリー・コメント・トラックバック・カテゴリーブログ情報やテンプレート等、DBに保存されている全てのデータ
バックアップサイズ無制限無制限(ただしサーバ環境によってアップロードサイズの制限あり)

ということで、DBバックアップについてはバックアップサイズに制限があり、例えばさくらインターネットのスタンダードプランでは約8MBになっています(一番最後の画面参照)。DBのバックアップを利用する際はこの点を考慮する必要があります。

ちなみに私のサイトのDBバックアップデータはすでに12MBを超えており、運用データでは実験することができませんでした。そういう訳で、今回はテストデータ(40エントリー位)を用いて動作の確認を行っています。

以下、phpMyAdmin を利用したバックアップファイル取得方法です。既に他のブログでもかなり紹介されていますが、実際に試してみると新たな発見もありましたので参考になれば幸いです。

1.バックアップのエクスポート

エクスポート手順は2通りあります。ひとつはDB全てのバックアップ、もうひとつはDB内の全テーブルのバックアップです。前者はインポート時にDBの作成から実施し、後者は予め作成されたDBにテーブルのみを作成します。どちらを選択しても差はないようですが、エクスポート時のオプション選択が若干異なります。前者の方が手順は少ないです。

いずれにしても、phpMyAdmin を利用したバックアップではデータベースが何かひとつ存在しないといけないようです。

1.1 DB全てのエクスポート

「エクスポート」をクリックphpMyAdmin のログイン後の画面に表示されている「エクスポート」をクリックします。
詳細設定使用しているDBが複数存在する場合は「エクスポート」からバックアップしたいDBを選択します(ひとつしかなければ選択不要です)。「データベースエクスポートオプション」の「DROP DATABASE」をクリックします(インポート時に同じ名前のDBが存在しない場合はチェック不要)。他の文字コードに変換する場合は「?エンコーディングへ変換する」を選択します。実験ブログは UTF-8 なのでここは「non」です(他の文字コードで運用されているとこの部分の表示は異なると思います)。そして「ファイルで保存する」をクリックして「実行」をクリックします。Windows であればファイルの保存ダイアログが表示されるので、任意のフォルダに保存します。

1.2 DB内の全テーブルのエクスポート

「エクスポート」をクリックphpMyAdmin のログイン後の画面に表示されている「エクスポート」をクリックします。
DB名をクリックエクスポートしたいDB名をクリックします。
「エクスポート」タブをクリック「エクスポート」タブをクリックします。
詳細設定「全選択」をクリックして、その上にあるテーブル名が全て選択されている状態にします。「構造」の「DROP TABLE」をクリックします。他の文字コードに変換する場合は「?エンコーディングへ変換する」を選択します。実験ブログは UTF-8 なのでここは「non」です(他の文字コードで運用されているとこの部分の表示は異なると思います)。そして「ファイルで保存する」をクリックして「実行」をクリックします。Windows であればファイルの保存ダイアログが表示されるので、任意のフォルダに保存します。

2.バックアップデータのインポート

1.1項・1.2項、どちらのエクスポート方法を選択しても、インポートする方法はほぼ同じです。「ほぼ」と書いたのは、1.2でエクスポートした場合は必ず同一のDB名を選択する必要があるからです。1.1のエクスポートを選択した場合、インポートする際に選択するDB名は任意です。
が、話がややこしくなるので、ここではエクスポートしたDB名と同じDB名のDBが存在することを前提に進めます。

DB名をクリックバックアップデータをインポートしたいDB名をクリックします。
「SQL」タブをクリック「SQL」タブをクリックします(冒頭に「データベースがなにかひとつ存在しないといけない」と書いた理由がこれです)。
バックアップファイルを指定「テキストファイルの場所」の「参照」をクリックして先程保存したバックアップファイルを指定し、「実行」をクリックします。
この右側に「最大サイズ」とあるのがバックアップデータの許容サイズを示しています。

これでバックアップデータがDBにインポートされます。

Comments [14] | Trackbacks [9]

QUOカードで

June 11,2006 1:11 AM
Category:[ダジャレ]
Tag:[]
Permalink
Comments [0] | Trackbacks [0]

Seesaaブログテンプレート更新

June 10,2006 2:55 AM
Category:[Seesaaブログ]
Tag:[, ]
Permalink

当サイトで現在公開中のSeesaaブログテンプレートを更新しました。
Seesaaブログは最近ご無沙汰してまして、「機能追加されています」というコメントを頂いての反映です。ご連絡ありがとうございました。

今回の更新はSeesaa ブログ、新機能追加によるスパム対策強化のお知らせに対応しています。具体的には、コメント入力時に

  • 名前
  • メールアドレス
  • ホームページアドレス
  • 本文

の必須入力を指定することができます。

また、コメント送信時に認証コード(CAPTCHA™)を要求することも可能になりました。認証コードは管理画面で手入力する形式で、動的に認証コードが変化するものではありません。

最新のデフォルトテンプレートと比較して差分を追加しましたが、上記以外の機能については未確認ですので、不具合がございましたらご連絡ください。
変更内容の動作については私のSeesaaブログをご覧ください。コメントエラーも Movable Type 風にしています。

今回の変更部分を以下に掲載しておきます。青色が追加部分ですので丸ごと入れ替えられない方は、現在設定しているテンプレートを見比べて追加してください。
スタイルシートについては任意の位置に追加してください。

HTML

     :
    (略)
     :
<div class="comments-preview">
 
<% if error_code %>
<blockquote class="error_message">
エラー:
<% if error_code eq '1' %>
投稿に失敗しました。
<% /if %>
<% if error_code eq '2' %>
未入力項目があります。
<% /if %>
<% if error_code eq '3' %>
認証コードのチェックに失敗しました。
<% /if %>
<% if error_code eq '4' %>
半角英数字のみのコメントは受付ません。
<% /if %>
</blockquote>
<% /if %>
 
<p>
お名前: <% article_child__writer | html %>
     :
    (略)
     :
コメント: <br /><% article_child__body | html | nl2br | clickable('target="_blank" rel="nofollow"') %>
<input type="hidden" name="article_child__body">
<% if:blog.ignore_setting.captcha_comment -%><input type="hidden" name="captcha_comment" /><% /if -%>
</p>
     :
    (略)
     :
<form action="/pages/user/comments2/regist/input" method="post">
<div class="comments-preview">
<p>
<label for="article_child__writer">お名前: <% if:blog.ignore_setting.fill_writer %>[必須]<% /if %></label>
<input id="article_child__writer" type="text" name="article_child__writer" size="50" value="" /><br />
</p>
<p>
<label for="article_child__email">メールアドレス: <% if:blog.ignore_setting.fill_email %>[必須]<% /if %></label>
<input id="article_child__email" type="text" name="article_child__email" size="50" value="" /><br />
</p>
<p>
<label for="article_child__homepage">URL: <% if:blog.ignore_setting.fill_homepage %>[必須]<% /if %></label>
<input id="article_child__homepage" type="text" name="article_child__homepage" size="50" value="" /><br />
</p>
<p>
<label for="article_child__body">コメント: <% if:blog.ignore_setting.fill_body %>[必須]<% /if %></label>
<textarea id="article_child__body" name="article_child__body" rows="10" cols="50"></textarea><br />
</p>
<input type="hidden" name="article_child__article_id" value="" />
<input type="hidden" name="article_id" value="" />
 
<% if:blog.ignore_setting.captcha_comment -%>
<p>
<label for="captcha_comment">認証コード: [必須]</label>
<img src="<% blog.ignore_setting.page_url_captcha_comment -%>" /> <input id="captcha_comment" type="text" name="captcha_comment" size="27" value="" style="vertical-align:top"/><br />
※画像の中の文字を半角で入力してください。
</p>
<% /if -%>
<% if:blog.ignore_setting.banascii_comment -%>
<% /if -%>
<% if:article.accept_comment_permission_mode -%>
<p>
※ブログオーナーが承認したコメントのみ表示されます。
</p>
<% /if -%>
<p class="button">
<input id="need_confirm" name="need_confirm" type="submit" class="input-submit"  value="確認する" /><input id="posted" name="posted" type="submit" class="input-submit"  value="書き込む" />
</p>
</div>
</form>
     :
    (略)
     :

スタイルシート

blockquote.error_message {
    width: auto;
    margin: 15px 20px 10px 20px;
    padding: 10px;
    border: 1px solid #dd4444;
    background: #ffeeee;
    font-size: 10px;
    line-height: 150%;
}
 
.red {
    color: #e50003;
}
Comments [0] | Trackbacks [1]

FC2ブログでのテンプレート設定方法

June 9,2006 1:55 AM
Category:[テンプレート]
Tag:[, ]
Permalink

FC2ブログ登録方法の続きで、当サイトのテンプレートを設定する方法を紹介します。

管理画面FC2ブログに、登録したIDでログインしてください。ログイン後にスクリーンショットのような画面が表示されますので、左側のちょっと下にある「テンプレートの設定」をクリックします。
テンプレート設定画面画面中央右にある「修正」をクリックします。
HTML編集画面このようにテンプレート編集画面が表示されます。まず青枠で括っている「HTMLの編集 xxxxを編集しています。」の下のテキストエリアの内容を消去します。
テキストエリア内容の選択Windows でテキストエリアの内容をまとめて削除するには、テキストエリアの任意の位置をクリックし、その状態で Ctrl+a をタイプ入力するか、マウスを右クリックして「すべてを選択」を選択します。選択できるとテキストが反転した状態になりますので、Delete キーを入力してください。
テキストエリア内容の消去削除すると、このようにテキストエリアに何もない状態になります。
テンプレート(HTML)のコピーブラウザをもうひとつ開いて、当サイトのFC2ブログテンプレートを開きます。この記事の下の方にテンプレートがあります。ここでは「HTML(通常カレンダー版)」の下にあるテキストエリアを選択状態にします(テキストエリアのどこかを右クリックするだけで全てが選択されます)。 選択状態になったら、Ctrl+c またはテキストエリアのどこかにマウスがある状態で右クリックして「すべて選択」を選択します。 これで新しいテンプレートがメモリに記憶された状態になりました。
テキストエリアへテンプレートを貼り付けFC2ブログのテンプレート編集画面を開いているブラウザに戻り、先ほど空にしたテキストエリアのどこかをクリックして、Ctrl+v または 右クリックして「貼り付け」を選択 します。これで新しいテンプレートがテキストエリアに設定されました。 ついでにその上にある名称も「koikikukan」等に変更しておきます。 これで上下いずれかの「更新」をクリックし、変更したテンプレートを保存します。
変更完了画面保存がOKであれば、左のようなメッセージが表示されます。
スタイルシート編集画面次はスタイルシートの変更を行います。前の画面で「編集」をクリックして、次のページをスクロール(下に移動)してスタイルシートのテキストエリアを表示します。
テキストエリア内容の消去このテキストエリアも、前のHTMLと同様の手順で空っぽの状態にしてください。
テンプレート(スタイルシート)のコピーもうひとつのブラウザで開いている、当サイトのFC2ブログテンプレートから「スタイルシート」の下にあるテキストエリアを選択状態にします(テキストエリアのどこかを右クリックするだけで全てが選択されます)。
テキストエリアへテンプレートを貼り付け空のテキストエリアに貼り付けて、保存をクリックします。
変更完了画面保存できたら左のようなメッセージが表示されます。 ここまで終わったら、左メニューにある「ブログの確認」をクリックしてください。
ブログの確認当サイトのブログが表示されれば完成です。お疲れ様でした。
テンプレート選択画面よりデザイン追加現在使っているデザインはそのままで、デザインをもうひとつ追加して、そこに当サイトのテンプレートを適用する場合は、「公式デザインから新しくダウンロードする」「共有デザインから新しくダウンロードする」のいずれかをクリックしてください。
テンプレート選択画面任意のテンプレートを選んで右側の「このテンプレートを追加する」をクリックします。
テンプレート選択完了画面これで新しいテンプレートが追加されますので、「修正」をクリックして先ほどと同じ手順でテンプレートを差し替えてください。 テンプレートを差し替えた後、青枠にある「このテンプレートに変更」を必ずクリックしてからブログ画面を確認してください。

「FC2ブログの共有デザインに登録すれば?」というツッコミはなしで(笑)。

Comments [2] | Trackbacks [0]

FC2ブログ登録方法

June 8,2006 12:37 AM
Category:[FC2ブログ]
Tag:[]
Permalink

FC2ブログの新規登録方法です。本当はFC2ブログ・公開テンプレートの具体的な設定方法を説明する予定でしたが、折角なので最初から説明することにしました。

FC2ブログトップページFC2ブログトップページ左上にある「新規ユーザ登録」の画像をクリック
メールアドレス入力画面ご自身のメールアドレスを入力して「送信」をクリック
メールアドレス送信完了画面「<メールアドレス>に送信しました」という画面が表示されるので、メーラーを開いてFC2ブログからの「FC2ID・登録完了のお知らせ」というタイトルのメールを確認してください。
送信メールメール本文にある「以下のURLから本登録をしてください」という下にあるリンクをクリックします。
ニックネーム・パスワード・性別入力画面新しく開いた画面でニックネーム・パスワード・性別を入力します。ニックネームはブログの投稿者となるもので、後から変更することも可能です。
登録完了画面フォームを送信すると「?様の登録が完了しました」という画面にジャンプします。ここでは「引き続き『FC2ブログ』の登録にすすむ」をクリックします。
ユーザ選択画面ここでは新規ユーザを想定してますので、「はじめての方」をクリックします。
項目設定画面利用規約を読み、希望ID・ニックネーム・ブログタイトル・ブログジャンル・ブログの説明を入力し、「登録」をクリックします。希望IDは変更することはできません。他の項目は後から変更することができます。
テンプレート選択画面テンプレート選択画面にジャンプします。ここでは一番上にあるテンプレートのラジオボタンをクリックして、ページ一番下の「選択」をクリックします。
ここで選択したテンプレートは当サイトの公開テンプレートに上書きされるカスタマイズ記事につながります。当サイトのテンプレートをご利用にならない場合は、ここで一旦お好みのテンプレートをきちんと選択してください。なおテンプレートは複数選択・保存でき、後で切り替えられます。
設定完了画面以上でFC2ブログの基本的な設定が完了しました。真ん中辺りにある[管理画面]をクリックするとブログの管理画面にジャンプします。

ブログの登録が完了した時点で、ログインID等の情報が登録したメールアドレスに送信されますので、大切に保管しておきましょう。

次回は公開テンプレートの設定方法を説明します。

Comments [0] | Trackbacks [0]

レンタルサーバー完全ガイド Vol.5・Web2.0への道

June 7,2006 12:15 AM
Category:[書籍]
Tag:[, ]
Permalink

インプレスR&D出版の「レンタルサーバー完全ガイド」、現在発売中の Vol.5 では Movable Type インストール方法が掲載されています。レンタルサーバで Movable Type を使ってみたい、という方向けの内容です。

レンタルサーバー完全ガイド Vol.5レンタルサーバー完全ガイド Vol.5
Web2.0編集部

インプレスR&D 2006-05-30
売り上げランキング : 54920

Amazonで詳しく見る
by G-Tools

この雑誌は200ページほどある誌面の半分以上がレンタルサーバ比較やガイドで占められているというもので、レンタルサーバを調べたい・今利用しているレンタルサーバを変更したい、という方には重宝する雑誌ではないでしょうか。

同社出版の「Web2.0への道」も紹介し損ねていたのでついでに。

Web2.0への道Web2.0への道

インプレスR&D 2006-04-15
売り上げランキング : 858

Amazonで詳しく見る
by G-Tools

すでにご存知と思いますが、この雑誌は休刊となったインターネットマガジンから Web2.0 に関する話題や著名人の関連インタビュー等が収録されたもので、検索・RSS・ブログ・ポッドキャスティング・キーワード広告・マッシュアップと、今読んでも全く遜色ない内容です。

なおインプレスR&Dの公式サイト

インプレスR&Dは、2006年6月7日から9日まで、幕張メッセで開催される「INTEROP 2006」に出展いたします。(出展ブース 3C01)

というニュースが掲載されていました。
本日から INTEROP 2006 展示会が始まります。

Comments [0] | Trackbacks [0]

BigTemplateWindow プラグインでテンプレートを編集する

June 6,2006 1:39 AM
Category:[管理画面]
Tag:[, ]
Permalink

Movable Type 3.3 のリリースが近づいてまいりましたので、以前からエントリーしようと思っていたプラグインを紹介します。

タイトルにある BigTemplateWindow プラグインは、テンプレート編集画面を拡張するためのBigPAPI対応プラグインです。

1.プラグインの主な機能

テンプレート編集画面(別ウィンドウ)で下記のことができます。

  • HTMLタグ埋め込みボタンと同じような操作でMTタグの埋め込みができます
  • MTタグを左の折りたたみメニューから選ぶことができます
  • メニューのMTタグをフォーカスするとツールチップが表示され、タグの解説が表示されます
  • 他のプラグインをインストールしている場合、それらのMTタグも表示されます(ツールチップはなし)
  • 編集画面でTABキーの入力や半角スペースの一括入力ができます
  • テキストの拡大・縮小ができます。
  • ウィンドウサイズは可変なのでテキストエリアを自由に広げることができます

2.プラグインのダウンロード

下記のサイトより BigTemplateWindow プラグインアーカイブをダウンロードします。

オリジナル
alogblog's MTy pluginsBigTemplateWindow
日本語翻訳版
caramel*vanilla[MT3.2]BigTemplateWindow 日本語版

オリジナルは Installation の this plugin のリンクをクリックすればダウンロードできます。また日本語版のパッケージは、caramel*vanilla さんが(配布元の許可を得て)改変くださったものです。

3.プラグインのアップロード

ダウンロードしたプラグインを解凍し、内容を下記の構成になるように、mt.cgi のあるディレクトリにアップロードします。

/plugins/BigPAPI.pl
/plugins/alogblog/BigTemplateWindow.pl
/alt-tmpl/cms/edit_template.tmpl

BigTemplateWindow を使うには BigPAPI プラグイン(BigPAPI.pl)が必要ですが、上記の通りプラグインアーカイブに最初から同梱されています。すでに BigPAPI プラグインをご利用の場合は下の2つだけをアップロードしてください。

メイン・メニュー > システム・メニュー > プラグイン で「BigTemplateWindow バージョン xx」が表示されていればOKです。これで利用可能な状態になっています。

4.利用方法

1項に記した機能の一部を、改めてスクリーンショットつきで説明します。

テンプレート編集画面テンプレート編集画面でテンプレート名をクリックすると編集画面が別ウィンドウで開きます。そして左ペインにMTタグやテンプレートのリストが表示されます。
MTタグ表示例えば Archive というタイトルをクリックするとアーカイブ関連のMTタグが、Entries をクリックするとエントリー関連のMTタグが表示されます。タグの先頭の「MT」という文字は省略されています。
ツールチップ表示さらに任意のMTタグをフォーカスすると右上にツールチップが表示されますので、この画面でMTタグの機能を知ることもできます。

表示されたMTタグから任意のタグをクリックすると、カーソルのある位置にタグが挿入されます。MTタグで可能な属性がすべて付与されますので、不要な属性は削除してください。
また、HTMLタグ埋め込みのように、文字列を選択した状態での埋め込みはできません(選択した文字列が消えてしまいます)。

他のテンプレートへ切り替え他のテンプレートもこの画面左下のメニューから選択するだけで切り替えることができます。

プラグインのMTタグはメニュー一番上にあります。その下にHTMLタグ挿入メニューがあります(こちらは選択状態で挿入できます)。

Comments [2] | Trackbacks [2]

韃靼そば

June 5,2006 12:20 AM
Category:[ダジャレ]
Tag:[]
Permalink

学名は「ファゴピルム・タータリクム(Fagopyrum tataricum)」。タータリクムは、「ダッタン地方の」と言う意味で、韃靼(だったん)そばの名はこの学名に由来しています。

Comments [3] | Trackbacks [3]

Movable Type 3.3b1-ja 再構築のパフォーマンス

June 4,2006 1:30 AM
Category:[3.3-ja, 再構築]
Tag:[, ]
Permalink

このサイトのバックアップデータを利用して Movable Type 3.3b1-ja の再構築時のパフォーマンスを測定しました。測定といっても目分量ですが。

実行環境等は下記の通りです。

  • OS:Windows XP Service Pack 2(Pen4 2.8GHz メモリ1.5GBで700MBほど使用中)。自宅サーバです。
  • Perl:5.6.1
  • DB:MySQL/SQLite
  • 再構築対象:エントリー・アーカイブ
  • 利用テンプレート:小粋空間3.2テンプレートのエントリー・アーカイブテンプレートを用い、再構築時間に影響があると思われる「最近のコメント *1」「カテゴリーリスト」「サブカテゴリーリスト」をいずれかひとつ設定。その他(カレンダー・最近のエントリー・最近のトラックバック・月別アーカイブ)のリストは常に設定。
  • エントリー:約1000
  • コメント:約7000
  • トラックバック:約2500
  • カテゴリー:103

以下、測定結果です。

1.エントリー・アーカイブの再構築時間

数値は最初の120エントリー(40エントリー×3)の平均を元に算出しています。

MySQLSQLite
最近のコメント22s/40エントリー35s/40エントリー
カテゴリーリスト27s/40エントリー147s/40エントリー
サブカテゴリーリスト38s/40エントリー270s/40エントリー
上記リストなし19s/40エントリー23s/40エントリー

2.CPU使用率

再構築中は常にほぼ100%。

3.メモリ使用率

再構築時間に比例して増加することはありませんでした(再構築単位でリソースが解放されている模様)。


*1 MTEntries に lastn属性値5を追加しています。lastn 属性を設定しない場合、1エントリーの再構築に30s以上かかるようです(MySQL・SQLiteとも)。

Comments [3] | Trackbacks [5]

Movable Type 3.3b1-ja 新機能と変更箇所一覧

June 3,2006 2:55 AM
Category:[3.3-ja]
Tag:[, ]
Permalink

Movable Type 3.3b1-ja を早速インストールしてみました。以下、新機能および変更箇所について紹介致します(もれていたらすいません)。また確認された不具合についても併せて報告しておきます。
動作は Windows XP Service Pack 2 + Perl 5.6.1 + SQLite で確認しています。

なお、3.3b1-jaでの問題点については、Movable Type 3.3 マニュアル(ベータ版)ベータ1における既知の問題点を参照ください(本記事の内容に合致するものがあります)。

2006.06.03:8.検索結果画面/10.検索結果画面のシステムテンプレート化を追加(以下繰り下げ)しました。
2006.06.06:3項にMySQL不具合の記述を追加しました。
2006.06.07:2.マニュアルへのリンクを追加しました。
2006.06.11:12.カテゴリーファイル名/14.エントリー一覧のリンクを追加(以下繰り下げ)しました。

1.旧バージョンとのファイル差分

毎回実施している旧バージョンとのファイル差分ですが、今回は 3.2-ja-2 との不一致が325ファイル見つかりました。ちなみに一致ファイルは556、比較元(3.2-ja-2)のみファイル存在が82、比較先(3.3b1-ja)のみファイル存在が148でした。
アップグレードでは全てのファイルをアップロードしましょう。

2.設定ファイル

mt-config.cgi は必要最低限の内容に変更され、CGIPath、StaticWebPath、データベース(不要なものを削除する形式)のみとなっています(下記)。

##          Movable Type configuration file                   ##
##                                                            ##
## This file defines system-wide settings for Movable Type    ##
## In total, there are 147 options, but only those critical   ##
## for everyone are listed below.                             ##
##                                                            ##
## Information on all others can be found at:                 ##
## http://www.sixapart.jp/movabletype/manual/3.3/config
 
################################################################
##################### REQUIRED SETTINGS ########################
################################################################
 
# The CGIPath is the URL to your Movable Type directory
CGIPath    http://www.example.com/cgi-bin/mt/
 
# The StaticWebPath is the URL to your mt-static directory
# Note: Check the installation documentation to find out 
# whether this is required for your environment.  If it is not,
# simply remove it or comment out the line by prepending a "#".
StaticWebPath    http://www.example.com/mt-static
 
#================ DATABASE SETTINGS ==================
#   REMOVE all sections below that refer to databases 
#   other than the one you will be using.
 
##### MYSQL #####
ObjectDriver DBI::mysql
Database DATABASE_NAME
DBUser DATABASE_USERNAME
DBPassword DATABASE_PASSWORD
DBHost localhost
 
##### POSTGRESQL #####
ObjectDriver DBI::postgres
Database DATABASE_NAME
DBUser DATABASE_USERNAME
DBPassword DATABASE_PASSWORD
DBHost localhost
 
##### SQLITE #####
ObjectDriver DBI::sqlite
Database /path/to/sqlite/database/file
 
##### BERKELEYDB #####
DataSource  /path/to/database/directory

他のオプションは

Movable Type 3.3 マニュアル(ベータ版): 環境変数

を参照し、必要に応じて設定、ということでしょうか。

3.新規インストール画面

新規インストール画面3.2 までと異なり、ログイン名・メールアドレス・パスワードを設定する画面が表示されます。Melody・Nelsonではなく、この画面でユーザは自身のログイン・パスワードを決定します。 その後は 3.2 と同様なインストールが行われます。

なお、MySQLでインストールNGになる場合、mt-config.cgi に下記の設定を追加する必要があります。

SQLSetNames 0

情報は SWEET WATER Web Server さんより頂きました。ありがとうございました。

4.初期設定画面

初期設定画面大きな違いはありませんが、Windows へのインストールではディレクトリのセパレータが "/" で表示されていました。

5.新規エントリー画面

新規エントリー画面デフォルト状態では新規ユーザが迷わないように(?)、設定項目がタイトルとエントリーの内容のみの表示に変更されています。追記やカテゴリーといった項目を表示する場合は左下にある「画面の表示設定を変更」でカスタマイズします。 また大きな変更点として、テキストエリアの縦幅を、右上にあるアイコンで変更できるようになりました。ただしこの版では幅の変更は保存されないようです。

エントリー一覧画面のタイトルリストの一番右側にはHTMLページのリンクが追加されています。

6.ファイルのアップロード

ファイルのアップロードアップロードパスの設定方法が若干変更されています。ただしこの版では設定は保存されない模様です。

7.タグ

新規インストール画面タグが導入され、タグクラウドもデフォルトのMTタグを利用することで実現できるようになりました。スクリーンショットのようにエントリー編集画面に「タグ」の項目が追加されています。設定がどのようにページに反映されるかについては次項で説明します。

8.新しいMTタグ

タグMTタグで大きな変更点のひとつは、タグ(キーワード)が表示されるようになったことです。メインページやアーカイブページに下記のMTタグが追加されています。
<MTEntryIfTagged>
<div class="entry-tags">
    <h4 class="entry-tags-header">タグ:</h4> 
    <ul class="entry-tags-list">
        <MTEntryTags>
            <li class="entry-tag"><a href="<$MTTagSearchLink$>"><$MTTagName></a></li>
        </MTEntryTags>
    </ul>
</div>
</MTEntryIfTagged>
前後カテゴリーのリンク もうひとつは、カテゴリー・アーカイブで前後のカテゴリーが表示できるようになりました。カテゴリー・アーカイブに下記のタグが追加されています。
<MTCategoryPrevious>
    <p>前のカテゴリは<a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a>です。</p>
</MTCategoryPrevious>
<MTCategoryNext>
    <p>次のカテゴリは<a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a>です。</p>
</MTCategoryNext>

ただしこの版では、前後カテゴリーリンクを正常に生成するためにはカテゴリー・アーカイブの再構築が必要なようです(エントリーの投稿だけでは片方向のリンクしか生成されない模様)。

もうひとつ、未公開タグも含めて検索結果画面でいくつかのタグが追加されています。以下抜粋です。

<MTIgnore>
 ##########  検索結果のフィードのAuto Discovery用リンクは検索が実行されたときにのみ表示されます。
</MTIgnore>
         :
<MTNoSearch><MTElse>
    <link type="application/atom+xml" rel="alternate" title="<$MTBlogName encode_html="1"$>: 検索結果" href="<$MTCGIPath$><$MTSearchScript$>?<MTIfStraightSearch>search<MTElse>tag</MTElse></MTIfStraightSearch>=<$MTSearchString$>&amp;Template=feed&amp;IncludeBlogs=<$MTSearchIncludeBlogs$>" />
</MTElse></MTNoSearch>
         :
<MTIfTagSearch>
    ブログ: <$MTBlogName$> でタグ: <$MTSearchString$> が指定されているエントリ
</MTIfTagSearch>
         :
<MTEntryTags>
    <li class="entry-tag"><a href="<$MTTagSearchLink$>&amp;IncludeBlogs=<$MTSearchIncludeBlogs$>"><$MTTagName></a></li>
</MTEntryTags>
         :
<MTBlogResultFooter>
    </div>
</MTBlogResultFooter>
         :
<MTSetVar name="search_feed_param" value="tag">
<MTSetVarBlock name="search_feed_description">フィードリーダーを利用して検索結果を購読し、今後投稿されるエントリでタグ「<$MTSearchString$>」が指定されているものにアクセスできます。</MTSetVarBlock>
         :
<p><$MTGetVar name="search_feed_description">  [<a href="http://www.sixapart.jp/about/feeds">フィードとは</a>]</p>
         :
<MTTags>
    <li><a href="<$MTTagSearchLink$>"><$MTTagName> (<$MTTagCount$>)</a></li>
</MTTags>

MTタグは真面目に探した訳ではありませんので、他にもありましたらお許しください。

9.ログフィード

ログフィードエントリー・コメント・トラックバック・ログの各メニュー右上「ログ・フィード」というリンクが追加されており、それぞれのメニューに対応する内容のフィードが取得できます。また全てのブログに跨った取得も可能です。 やや冗長ですがすべてのログフィードのサンプルを掲載します。

エントリー・ログフィード

<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<link xmlns="http://www.w3.org/2005/Atom" type="text/html" 
      rel="alternate" href="http://hogehoge/MT-3.3b1-ja/mt.cgi?__mode=list_entries&blog_id=1" 
      title="「First Weblog」のエントリー" /><title>エントリー: </title><entry xmlns="http://www.w3.org/2005/Atom">
<title>hogehoge (ID: 1) が投稿しました (エントリーID: 2)</title>
<published>2006-06-02T14:54:56Z</published>
<updated>2006-06-02T14:54:56Z</updated>
<id>http://hogehoge/MT-3.3b1-ja/mt.cgi:log-4</id>
<link xmlns="http://www.w3.org/2005/Atom" type="text/html" 
      rel="alternate"
      href="http://hogehoge/MT-3.3b1-ja/archives/2006/06/post_1.html" />
<author>
<name xmlns="http://www.w3.org/2005/Atom">hogehoge</name>
<email xmlns="http://www.w3.org/2005/Atom">hogehoge@gmail.com</email>
<uri xmlns="http://www.w3.org/2005/Atom"></uri>
</author>
<content mode="base64">PGRpdiBjbGFzcz0iY29udGVudCI+CjxwPuODiOODqeODg+OCr+ODkOODg+OCr+ODhuOCueODiDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJhY3Rpb25zIj4KPGEgaHJlZj0iL2Jsb2cvTVQtMy4zYjEtamEvbXQuY2dpP19fbW9kZT12aWV3JmFtcDtfdHlwZT1lbnRyeSZhbXA7aWQ9MiZhbXA7YmxvZ19pZD0xIj7nt6jpm4Y8L2E+CjwvZGl2Pg==</content>
</entry>
<entry xmlns="http://www.w3.org/2005/Atom">
<title>hogehoge (ID: 1) が投稿しました (エントリーID: 1)</title>
<published>2006-06-02T14:40:43Z</published>
<updated>2006-06-02T14:40:43Z</updated>
<id>http://hogehoge/MT-3.3b1-ja/mt.cgi:log-2</id>
<link xmlns="http://www.w3.org/2005/Atom" type="text/html" 
      rel="alternate"
      href="http://hogehoge/MT-3.3b1-ja/archives/2006/06/post.html" />
<author>
<name xmlns="http://www.w3.org/2005/Atom">hogehoge</name>
<email xmlns="http://www.w3.org/2005/Atom">hogehoge@gmail.com</email>
<uri xmlns="http://www.w3.org/2005/Atom"></uri>
</author>
<content mode="base64">PGRpdiBjbGFzcz0iY29udGVudCI+CjxwPuaKleeov+ODhuOCueODiDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJhY3Rpb25zIj4KPGEgaHJlZj0iL2Jsb2cvTVQtMy4zYjEtamEvbXQuY2dpP19fbW9kZT12aWV3JmFtcDtfdHlwZT1lbnRyeSZhbXA7aWQ9MSZhbXA7YmxvZ19pZD0xIj7nt6jpm4Y8L2E+CjwvZGl2Pg==</content>
</entry>
</feed>

コメント・ログフィード

<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<link xmlns="http://www.w3.org/2005/Atom" type="text/html" 
      rel="alternate" href="http://hogehoge/MT-3.3b1-ja/mt.cgi?__mode=list_comments&blog_id=1" 
      title="First Weblogへのコメント" /><title>コメント: </title><entry xmlns="http://www.w3.org/2005/Atom">
<title>「てすと (ID: 1 )」への新しいコメント</title>
<published>2006-06-02T14:53:54Z</published>
<updated>2006-06-02T14:53:54Z</updated>
<id>http://hogehoge/MT-3.3b1-ja/mt.cgi:log-3</id>
<link xmlns="http://www.w3.org/2005/Atom" type="text/html" 
      rel="alternate" href="http://hogehoge/MT-3.3b1-ja/archives/2006/06/post.html#c1" />
<content mode="base64">PGRpdiBjbGFzcz0iY29udGVudCI+CnRlc3QKPC9kaXY+Cgo8ZGl2IGNsYXNzPSJhY3Rpb25zIj4KPGEgaHJlZj0iL2Jsb2cvTVQtMy4zYjEtamEvbXQuY2dpP19fbW9kZT12aWV3JmFtcDtfdHlwZT1jb21tZW50JmFtcDtpZD0xJmFtcDtibG9nX2lkPTEiPue3qOmbhjwvYT4KPC9kaXY+</content>
</entry>
</feed>

トラックバック・ログフィード

<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<link xmlns="http://www.w3.org/2005/Atom" type="text/html"
      rel="alternate" href="http://hogehoge/MT-3.3b1-ja/mt.cgi?__mode=list_pings&blog_id=1"
      title="First Weblogへのトラックバック" />
<title>トラックバック: </title>
<entry xmlns="http://www.w3.org/2005/Atom">
<title>エントリー「てすと (ID: 1)」への新しいトラックバック</title>
<published>2006-06-02T14:55:21Z</published><updated>2006-06-02T14:55:21Z</updated>
<id>http://hogehoge/MT-3.3b1-ja/mt.cgi:log-5</id>
<link xmlns="http://www.w3.org/2005/Atom" type="text/html" rel="alternate" href="http://hogehoge/MT-3.3b1-ja/archives/2006/06/post.html#p1" />
<content mode="base64">PGRpdiBjbGFzcz0iY29udGVudCI+ClhNTDo6QXRvbTo6Q29udGVudD1IQVNIKDB4NDFmM2RjOCkKPC9kaXY+Cgo8ZGl2IGNsYXNzPSJhY3Rpb25zIj4KPGEgaHJlZj0iL2Jsb2cvTVQtMy4zYjEtamEvbXQuY2dpP19fbW9kZT12aWV3JmFtcDtfdHlwZT1waW5nJmFtcDtpZD0xJmFtcDtibG9nX2lkPTEiPue3qOmbhjwvYT4KPC9kaXY+Cg==</content>
</entry>
</feed>

ログ・ログフィード

<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<link xmlns="http://www.w3.org/2005/Atom" type="text/html"
      rel="alternate" href="http://hogehoge/MT-3.3b1-ja/mt.cgi?__mode=view_log&blog_id=1"
      title="Movable Typeログ" />
<title>Movable Typeシステム・ログ</title>
<entry xmlns="http://www.w3.org/2005/Atom">
<title>エントリー「てすと (ID: 1)」への新しいトラックバック</title>
<published>2006-06-02T14:55:21Z</published>
<updated>2006-06-02T14:55:21Z</updated>
<id>http://hogehoge/MT-3.3b1-ja/mt.cgi:log-5</id>
<link xmlns="http://www.w3.org/2005/Atom" type="text/html"
      rel="alternate" href="http://hogehoge/MT-3.3b1-ja/archives/2006/06/post.html#p1" />
<content mode="base64">PGRpdiBjbGFzcz0iY29udGVudCI+ClhNTDo6QXRvbTo6Q29udGVudD1IQVNIKDB4NDFmOTY0NCkKPC9kaXY+Cgo8ZGl2IGNsYXNzPSJhY3Rpb25zIj4KPGEgaHJlZj0iL2Jsb2cvTVQtMy4zYjEtamEvbXQuY2dpP19fbW9kZT12aWV3JmFtcDtfdHlwZT1waW5nJmFtcDtpZD0xJmFtcDtibG9nX2lkPTEiPue3qOmbhjwvYT4KPC9kaXY+Cg==</content>
</entry>
<entry xmlns="http://www.w3.org/2005/Atom">
<title>hogehoge (ID: 1) が投稿しました (エントリーID: 2)</title>
<published>2006-06-02T14:54:56Z</published>
<updated>2006-06-02T14:54:56Z</updated>
<id>http://hogehoge/MT-3.3b1-ja/mt.cgi:log-4</id>
<link xmlns="http://www.w3.org/2005/Atom" type="text/html"
      rel="alternate"
      href="http://hogehoge/MT-3.3b1-ja/archives/2006/06/post_1.html" />
<author>
<name xmlns="http://www.w3.org/2005/Atom">hogehoge</name>
<email xmlns="http://www.w3.org/2005/Atom">hogehoge@gmail.com</email>
<uri xmlns="http://www.w3.org/2005/Atom"></uri>
</author>
<content mode="base64">PGRpdiBjbGFzcz0iY29udGVudCI+CjxwPuODiOODqeODg+OCr+ODkOODg+OCr+ODhuOCueODiDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJhY3Rpb25zIj4KPGEgaHJlZj0iL2Jsb2cvTVQtMy4zYjEtamEvbXQuY2dpP19fbW9kZT12aWV3JmFtcDtfdHlwZT1lbnRyeSZhbXA7aWQ9MiZhbXA7YmxvZ19pZD0xIj7nt6jpm4Y8L2E+CjwvZGl2Pg==</content>
</entry>
<entry xmlns="http://www.w3.org/2005/Atom">
<title>「てすと (ID: 1 )」への新しいコメント</title><published>2006-06-02T14:53:54Z</published>
<updated>2006-06-02T14:53:54Z</updated>
<id>http://hogehoge/MT-3.3b1-ja/mt.cgi:log-3</id>
<link xmlns="http://www.w3.org/2005/Atom" type="text/html"
      rel="alternate" href="http://hogehoge/MT-3.3b1-ja/archives/2006/06/post.html#c1" />
<content mode="base64">PGRpdiBjbGFzcz0iY29udGVudCI+CnRlc3QKPC9kaXY+Cgo8ZGl2IGNsYXNzPSJhY3Rpb25zIj4KPGEgaHJlZj0iL2Jsb2cvTVQtMy4zYjEtamEvbXQuY2dpP19fbW9kZT12aWV3JmFtcDtfdHlwZT1jb21tZW50JmFtcDtpZD0xJmFtcDtibG9nX2lkPTEiPue3qOmbhjwvYT4KPC9kaXY+</content>
</entry>
<entry xmlns="http://www.w3.org/2005/Atom">
<title>hogehoge (ID: 1) が投稿しました (エントリーID: 1)</title>
<published>2006-06-02T14:40:43Z</published>
<updated>2006-06-02T14:40:43Z</updated>
<id>http://hogehoge/MT-3.3b1-ja/mt.cgi:log-2</id>
<link xmlns="http://www.w3.org/2005/Atom" type="text/html"
      rel="alternate" href="http://hogehoge/MT-3.3b1-ja/archives/2006/06/post.html" />
<author>
<name xmlns="http://www.w3.org/2005/Atom">hogehoge</name>
<email xmlns="http://www.w3.org/2005/Atom">hogehoge@gmail.com</email>
<uri xmlns="http://www.w3.org/2005/Atom"></uri>
</author>
<content mode="base64">PGRpdiBjbGFzcz0iY29udGVudCI+CjxwPuaKleeov+ODhuOCueODiDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJhY3Rpb25zIj4KPGEgaHJlZj0iL2Jsb2cvTVQtMy4zYjEtamEvbXQuY2dpP19fbW9kZT12aWV3JmFtcDtfdHlwZT1lbnRyeSZhbXA7aWQ9MSZhbXA7YmxvZ19pZD0xIj7nt6jpm4Y8L2E+CjwvZGl2Pg==</content>
</entry>
</feed>

10.検索結果画面のシステムテンプレート化

検索フィード検索結果画面がシステムテンプレートに組み込まれました。これによりブログ別に検索結果画面を簡単に制御できるようになります。

11.検索結果用フィード

検索フィード検索結果画面右上にフィードが追加されました。これで「フィードリーダーを利用して検索結果を購読し、今後投稿されるエントリで検索文字列にマッチするものにアクセスできます。」と書かれていたので試してみましたが、RSSリーダーに設定しようとしたところ読み込みエラーになりました(私のミスかもしれませんが報告まで)。

12.カテゴリーファイル名

カテゴリーファイル名3.2 までカテゴリーファイル名はシステムに依存していましたが、任意のカテゴリーファイル名を設定できるようになりました。なお変更するには右側の鍵アイコンをクリックします。
この情報は Blog::Trapple::Net さんより頂きました。ありがとうございました。

13.アーカイブページのレイアウト

アーカイブページ各アーカイブページのデフォルトレイアウトが2カラムに変更になっています。また8項と重複しますが、右カラムに「About」という項目が表示されるようになり、そこに前後アーカイブのリンクが表示されるようになりました。スクリーンショットはエントリーアーカイブですが、カテゴリー・アーカイブ、月別アーカイブも同様です。

14.エントリー一覧のリンク

エントリー一覧のリンク管理画面のエントリー一覧に各アーカイブページへのリンクが追加されました。当サイトではリンクを表示するプラグインを公開していましたがこの機能追加によりプラグインが不要になります。
この情報は caramel*vanillaMovable Type 3.3 Betaをインストールしてみたより頂きました。ありがとうございました。

15.設定画面

アーカイブページ管理メニューの「設定」の表示項目が最小限になりました。詳細を設定する場合は画面右上にある「詳細モードに切り替え」をクリックします。

16.Webサービスのパスワード

Webサービスのパスワード メイン・メニュー > システム・メニュー > 投稿者 で設定する Webサービス用のパスワードです。これまではログインパスワードと別に設定する必要がありましたが、自動的にパスワードが設定されるようになりました。デフォルトの設定文字列はログインパスワードと異なります。入力エリア右にある「内容を表示」をクリックすればパスワード文字列が確認できます。

17.StyleCatcher

公式サイトのアナウンスでは StyleCatcher プラグインが同梱されるとのことでしたが、このバージョンでは同梱されていません。

Comments [11] | Trackbacks [6]

Movable Type 3.3 ベータテスト開始

June 2,2006 8:50 PM
Category:[3.3-ja]
Tag:[]
Permalink

Six Apart で Movable Type 3.3 のベータテストが開始しました。

Movable Type 3.3 ベータテスト開始

本日2006年6月2日金曜日、いよいよワールドワイドでMovable Type 3.3のベータテストを開始いたします。以下のリンクより日本語ベータ版を入手していただき、ご評価いただければ幸いです。

ということで日本語ベータ版もダウンロードできます。

Comments [0] | Trackbacks [0]

アーカイブページ用テンプレート追加

June 2,2006 12:20 AM
Category:[お知らせ, テンプレート]
Tag:[, ]
Permalink

Movable Type 3.2 テンプレートにアーカイブページ用テンプレートを新しく追加しました。
追加した理由は利用促進ではなく、「アーカイブページ」テンプレートに「カテゴリー・アーカイブ」や「エントリー・アーカイブ」等のアーカイブテンプレートを誤って設定される方が結構いらっしゃるため、それを回避するための施策です。

それに併せて、上記エントリーの各テンプレートのタイトルに [インデックス] [アーカイブ] [システム] という、管理ページのテンプレート編集画面にあるタブ名を加えました。これでどのテンプレートをどこに貼り付ければ良いか判断しやすくなると思います。誤って設定される方が現われないことを期待しています。

なお、追加したアーカイブページテンプレートの中央カラムの表示内容は、デフォルトテンプレートのアーカイブページに合わせていますので、中央カラムには全エントリーのリストがずらずらと表示されるだけです。
表示内容を月別・カテゴリー別等に変更したい場合は、アーカイブページを作るを参照ください。

Comments [2] | Trackbacks [0]

画像でエントリー・アーカイブをページ分割する

June 1,2006 2:15 AM
Category:[ページ分割]
Tag:[, , , , ]
Permalink

Movable Type でページ分割用プラグイン MTPaginate を用い、エントリーアーカイブを画像(およびテキスト)で分割するカスタマイズです。

下記のように img 要素だけを記述したエントリーで、パラグラフ(p)要素でページ分割をする場合、MTPaginate をそのまま利用すると分割されず、全て同じページに表示されます(空行部分、つまり img 要素の前後には Movable Type の機能で自動的に p 要素が付与されます)。

<img src="http://yourhost/path/hoge1.jpg" alt="hoge1" />
 
<img src="http://yourhost/path/hoge2.jpg" alt="hoge2" />
 
<img src="http://yourhost/path/hoge3.jpg" alt="hoge3" />

これは、ページ分割のセクションサイズ等の計算をHTMLタグを除いたテキストだけで行うためです。

ということで、プラグインソースを改変し、img 要素等のHTMLタグでページ分割する方法を紹介します。
下記に改変内容を記します。なおエントリーアーカイブのページ分割の基本的な設定が完了していることが前提です。設定方法については、エントリーアーカイブのページ分割を参照ください。

また、ここではパラグラフ要素をセパレータとした動作のみ確認しています(下記の設定)。

section_start_tag="p"

これ以外の要素や、他のオプションによる分割については動作を確認しておりませんので予めご容赦ください。

1.プラグインの修正

MTPaginate.pl に下記のパッチを適用します。プラグインファイルのTAB文字は半角空白4文字に予め置き換えてください。

--- MTPaginate.pl.bak   Fri May 19 13:14:15 2006
+++ MTPaginate.pl       Fri May 19 13:20:44 2006
@@ -146,7 +146,7 @@
                     } elsif($pg->{max_bytes}) {
                         $sectionSize = length($stripped_section);
                     } else {
-                        my @words = split /[\s]+/, remove_html($stripped_section);
+                        my @words = split /[\s]+/, $stripped_section;
                         $sectionSize = scalar(@words);
                     }
 
@@ -156,12 +156,12 @@
                             my $sz = length($p);
                             my @words = split /[\s]+/, remove_html($p);
                             my $words = scalar(@words);
-                            $pageCount++;
                             $debugContent .= "<div style=\"background: yellow; margin-left: -10px; margin-right: -10px; padding: 5px 10px 5px 10px\"><b>Page $pageCount</b>, $pageSectionCount sections
, $words words, $sz bytes</div>" . $debugPage;
                             $debugPage = '';
                             $pageSectionCount = 0;
                         }
-                        push @pages, $page;
+                        push @pages, $page if $pageCount;
+                        $pageCount++;
                         $count = 0;
                         $page = [];
                     }

パッチのあてかたが分からない方は、下記のリストを参照して、赤色を削除し、青色を追加してください。*1

       :
} elsif($pg->{max_bytes}) {
    $sectionSize = length($stripped_section);
} else {
    my @words = split /[\s]+/, remove_html($stripped_section);
    my @words = split /[\s]+/, $stripped_section;
    $sectionSize = scalar(@words);
}
       :
      (中略)
       :
        my $sz = length($p);
        my @words = split /[\s]+/, remove_html($p);
        my $words = scalar(@words);
        $pageCount++;
        $debugContent .= "<div style=\"background: yellow; margin-left: -10px; margin-right: -10px; padding: 5px 10px 5px 10px\"><b>Page $pageCount</b>, $pageSectionCount sections
ytes</div>" . $debugPage;
        $debugPage = '';
        $pageSectionCount = 0;
    }
    push @pages, $page;
    push @pages, $page if $pageCount;
    $pageCount++;
    $count = 0;
    $page = [];
}
       :

2.プラグインのアップロード

修正した MTPaginate.pl を元のディレクトリにアップロードします。

以上です。


*1:色覚障害等で色が識別できない場合は、サイト右上の「Styles」メニューにある Gray Scale をクリックしてください。IEではグレースケール表示され、青色部分が下線表示、赤色部分が二重下線で表示されます。Firefox/Opera ではカラー表示のままですが下線表示に切り替わります。なお設定の都合上、リンクとテキスト表示が判断できなくなりますので予めご容赦ください。

Comments [6] | Trackbacks [1]
Now loading...
Introduction
List of "June 2006"
Recent Entries
Recent Comments
Recent Trackbacks
QRcode

現在停止中です
携帯電話からこのQRcodeを撮影することで携帯用URLを取得することができます

URI for cellular phones
ギターに入った猫
Styles
Font Size
Default
For defective color vision
Gray Scale
RGB Color
Search this site
loading ...
Categories
Monthly Archives
BlogPeople
Syndicate this site
FeedBurner(RSS1.0/RSS2.0/Atom)
Counter
これまでのアクセス
クリエイティブ・コモンズ・ライセンス
Powered by
Movable Type 5.12