Home > Movable Type Archive

Movable Type Archive

Movable Type導入Plug-in一覧

*Plug-in

  • AddHatenaBookmarkUserNum
  • Comment by Google Account
  • Commenter Authrntication by Hateha ID
  • HatenaBookmarker
  • Open ID Server for MT
  • Related Entries
  • mixiComment
  • mt-sukeroku-plus
  • MTPingedEntry
  • Text::Hatena

*テンプレートセット

  • KoikikukanTemplateSet
  • Pandora Template Set
  • mtVicuna Template Set

*詳細

*AddHatenaBookmarkUserNum

管理画面にてはてなブックマークのユーザ数を表示してくれるハズなのだが...、MT4には対応していないらしく、現在動いてくれてません。いつかMT4に対応してくれる事を信じて、忘れないためにも一応インストールはしています。

*Comment by Google Account

Googleのアカウントでコメント記入を可能にするPlug-inです。Googleのアカウントに対応しているのは良いと思うのですが、ユーザ名が固定なのがちょいと頂けないかなぁと...。このPlug-inはMT4.0及び4.1に同梱されていたのですが、4.2からは同梱されなくなりました。現在はSixApartでも配布してない模様です。MT4.0か4.1のアーカイブを持っている人なら、その中から持ってくる事ができます。

*Commenter Authrntication by Hateha ID

制作者Weblog

はてなのアカウントでコメント記入を可能にするPlug-inです。はてはがOpenIDに対応しましたが、コレはコレで使えるので、結構好んでいます。OpenIDを利用する場合は、利用者がOpenIDのURIを把握している必要がありますが、このPlug-inははてなのアカウントでログインするので、はてなのアカウントさえ分かっていればアカウントの入力、またははてなにログイン済みであればそのままコメントを付ける事が出来ます。

そう言う意味では、こっちの方が利用者にとって敷居が低い気がするので好んでいます。

*HatenaBookmarker

ウェブログの記事が投稿されると同時に、自分のはてなアカウントのブックマークに登録するPlug-inです。はてなブックマークに登録されると、はてなブックマーク内での検索に対応するので、WeblogサーチエンジンにPing送る感じで利用しています。はてな側で自動でTagを付けてくれるので、結構便利だったりします。

*Open ID Server for MT

ダウンロード先

Movable Typeで自分のWeblogをOpneID Server化する事が出来ます。自分のWeblogのURIがOpenID用のURIとする事が出来るし、名前などもWeblogで登録している名前を取得してくれるので便利です。OpenIDの外部サーバに頼る必要が無くなり、自分で管理する事となります。

このPlug-inはMovable TypeのインストールPlug-inに表示されない事と、他のPlug-inと比べるとちょっと設定が面倒な点が難かと。Movable Type上だけではどうにもならないので...。

*Related Entries

制作者Weblog

エントリーの関連付けを行うPlug-inです。Movable Typeのタグでは、そのエントリーが属する同一カテゴリ内のエントリー一覧を出力する事はできますが、このPlug-inを利用するとカテゴリを越えての登録が可能となります。テンプレートには出力用の独自タグを記述する必要があります。

このPlug-inを使うまでは、自分のWeblog内でPingを送ってトラックバックとしてリンクをしていたのですが、そういう使い方もどうなのかと思って、このPlug-inを使い始めました。

カテゴリを越えて関連エントリーを出力する事が出来るのは良いのですが、欲を出すならば、自分のWeblog以外のリンクも作成できると便利かなぁ、と。Weblog内の関連エントリーと、Weblog外の関連サイトのリンクを載せたいのですがねぇ...。

*mixiComment

Movable TypeのコメントでmixiのOpenIDを利用して記入するためのPlug-inです。

mixiに登録していれば、コメント初投稿時のMovable Typeへの登録の手間が省けます。mixiの日記でWeblogを登録している人には特に向いているかと思います。

*mt-sukeroku-plus

制作者Weblog

記事の入力支援Plug-inです。はてなダイアリーとPukiwikiとYukiWikiのフォーマットで入力する事ができます。

昔、はてなダイアリーを使ってた時もあり、このWeblogの殆どがはてなダイアリー風フォーマットを使って入力しています。現在はサーバの対応上ver.1を利用していますが、ver.2まで出ています。とういか、更新してくれないかなぁ...。一番長く使っているPlug-inです。

*MTPingedEntry

トラックバックを受けたエントリーは、個別のエントリー表示では、どのエントリーに対してどこからトラックバックを受けたのかが分かりますが、最近のトラックバック表示ではどこのエントリーに対してトラックバックを受けたのかが分かりません。それを表示するためのタグもありません。そこで、トラックバックとトラックバックを受けたエントリーを表示する事ができるPlug-inがコレです。

*Text::Hatena

制作者Weblog

mt-sukeroku Plug-in制作者と同じ方が作っている、はてなダイアリー風のフォーマットのみに特化したPlug-inです。

一応はてなダイアリー風のフォーマットがメインとなっているので導入しています。

*KoikikukanTemplateSet

MT3の時はこのテンプレートをベースにカスタマイズしていたのですが、MT4では他に自分の要求を満たすテンプレートが見付かったので、取りあえず、インストールだけはしています。また、何かあったらお世話になるかも?

*Pandora Template Set

一時期、このテンプレートを使っていたのですが、ちょっと...余計な機能が多すぎて、あまりにもデフォルトテンプレートからかけ離れていて、カスタマイズが難しかったので、短期間で利用を止めました。

*mtVicuna Template Set

現在使っているテンプレートのベースとなっているテンプレートセットです。余計な機能は付けず、Movable typeのデフォルトテンプレートに近い構造なっており、且つ、一つのテンプレートで様々なレイアウト構成が可能となっているため、かなり使い易いと個人的は思っております。

カスタマイズする事が多い人にはお勧めかと。

サーバ移転

そろそろDNSも落ち着いたようで、多分、全部こっちの表示に切り替わっているのではないかと思われます。

前回のエントリーで書きましたが、xreaVALUE DOMAINを運営しているDegiRockがCORE SERVERを立ち上げ、そのサーバが気に入ってしまい、アカウントを取るやいなや、即、半年契約をしまして、サーバ移転した次第です。

今まで半年程使っていたSTEP SERVERも悪くはなかったんですけどね...。性能も容量もCORE SERVERが良くて、更に安くて、xrea母体が運営と来たら、乗り換えるしかないでしょう。

CORE SERVERを契約してから、すぐにテストも兼ねてドメイン移転作業を行って、VALUE DOMAINで取得したドメインは問題がなかったのですが、他社で取得したドメインは少し独特の手続きに戸惑ってしまい、2~3日程ドメイン解決ができない状況に陥ってしまいました。時間があれば改めて手順をエントリーしたいところですが...。...えぇ、時間があれば...。

MovableTypeも丁度ver4の正式リリースとなった訳ですが、今まで導入していた入力支援plug-inのmt-sukeroku2がモジュール関係で動かないので、仕方なくmt-sukeroku plus(Ver.1)を使っています。他にもいくつかplug-inを入れたり、以前の設定をまた再設定しないといけなかったりと、まだまだする事は残されていますが、時間をかけて元通りにしていこうかと思っています。

時々、変な表示にになるかもしれないけど、その時は笑ってやってください(苦笑)。

phpMyAdminでのサーバ間データ移行

  • Posted by: 南野 せな
  • 2006年11月30日 05:55
  • Movable Type

現在、sena.jpドメインをC'S SERVERPersonal(独自ドメイン)、このWeblogでも使用しているsena.toドメインをSAKURA Internetのスタンダードで運用しています。それを新しく契約する予定のSTEP SERVER(ステップサーバー)にてサイトを一括管理しようと考えています。サーバ移転にあたり、このWeblogシステムのMovableTypeの移転をデータベースのデータ毎移行させようと考えています。

MovableTypeにはデータのインポート&エクスポート機能が備わっていますが、このエクスポート機能ではトラックバックの受信記録が残らないので、そのままの環境を維持するにはデータベースのデータごとの移行が一番良いと思いました。新旧どちらのサーバでもMySQLを使っており、phpMyAdminがデフォルトインストールされているので、phpMyAdminでインポート&エクスポートの試行結果を残しておきます。

*データベースサーバ環境

SAKURA Internet

  • MySQL 4.0.27
  • phpMyAdmin 2.6.1-pl3

STEP SERVER(ステップサーバー)(本移転前事前テスト環境)

  • MySQL 4.0.22
  • phpMyAdmin 2.9.0.2

共通事項、その他

  • データベースは1契約につき1つ
  • テーブルの作成数に制限は無い
  • STEP SERVERの本移転サーバはMySQL4.1.xとなる見込みだが、問題は無いと思われる

*phpMyAdminでのバックアップ方法

phpMyAdminでデータベースのエクスポートの方法はいくつかあり

  • データベースの丸ごとエクスポート
  • テーブル毎にエクスポート
  • 複数のテーブルをまとめてエクスポート

という方法がある。

しかし、インポートする時にファイルのアップロードサイズ制限があり、1データベースで制限を超えるような場合はテーブル毎か、制限サイズ内で複数のテーブルをまとめてエクスポートする必要がある。今回の私の場合はまさにこの状態でした。

*オーバーヘッドの確認

もし、データベースのテーブル内にオーバーヘッドが存在するようであれば、インポート時に成功しない可能性があるので、エクスポート前にオーバーヘッドを改善しておく事をお勧めします。

オーバーヘッドの確認方法は、ログイン後のphpMyAdmin内に左サイドのメニューからデータベース名のリンクをクリックし、データベーステーブルを表示させます。テーブルの一覧表示されると「テーブル」、「実行」、「レコード」、「フィールドタイプ」、「サイズ」、「オーバーヘッド」表示されます。

「オーバーヘッド」欄にて全部「-」と表示されていれば問題ありませんが、もし、数値が表示されているテーブルがあれば、オーバーヘッドがあります。

オーバーヘッドが見付かった場合、数値のリンクをクリックするとテーブルの詳細情報が表示されます。そのページの真ん中くらいに「ディスク使用量」の項目があり、項目の一番下に「テーブルを最適化します。」のリンクがあるのでクリックします。「実行された SQL クエリー」の「Msg_text」のステータスが「OK」となっていれば成功です。

オーバーヘッドのテーブルが複数存在する場合は、テーブル一覧の画面に戻り、上記の手順を繰り返します。テーブル一覧にてオーバーヘッド欄が全て「-」になれば移行準備環境です。

*データベースの丸ごとエクスポート

データベースのバックアップやデータの移行を行う時は、このデータベースの丸ごとエクスポートが一番良いと思われますが、私の場合、容量の問題でこれは使えませんでした。

移転先のデータのアップロードサイズが2MBまでとなっていましたが、移転前のデータベースのサイズは12MB...。ダメもとでアップロードはしてみましたが、サーバのタイムアウトになるので、更にチャレンジして圧縮して2MB以内に収めてアップロードしましたが、サーバの反応が返ってこないという状態に陥ってしまったので、丸ごとエクスポートは諦めました。結局は圧縮しても元サイズが元サイズだから、解凍した容量に処理しきれなかったのでしょう。データ圧縮については後で記述します。

データベースの丸ごとエクスポートするにはログイン後の画面で「エクスポート」となっているリンクをクリックします。エクスポートするデータベースを選択し(多分1つ)、「SQL オプション」にて「DROP TABLEを追加」と「IF NOT EXISTSを追加」と個人的推奨で「作成/更新/検査の日付を追加」にチェックを入れます。

最後に「ファイルで保存する」にチェックを入れ、「実行」ボタンを押すと、ファイル保存のダイアログが出てくるので、適当なところに保存しましょう。ファイル名はデフォルトで構いません。

これでエクスポートし、ローカルに保存したファイル容量が移転先のアップロードサイズ制限に引っかからなければ問題ありません。

以上で、データベース丸ごとエクスポートは完了です。

*テーブル毎にエクスポート

データベース丸ごとエクスポートにて容量の制限に引っかかる場合は、テーブル毎にエクスポートします。

phpMyAdminの画面でログイン後に左サイドのデータベース名をクリックします。テーブルの一覧が表示された上に「エクスポート」という名のリンクがあるのでクリックするとエクスポート画面が出てきます。

「エクスポート」欄にエクスポート可能なテーブル名が表示されるので、エクスポートするテーブル名を選択し、「SQL オプション」にて「DROP TABLEを追加」と「IF NOT EXISTSを追加」と個人的推奨で「作成/更新/検査の日付を追加」にチェックを入れます。

最後に「ファイルで保存する」にチェックを入れ、「実行」ボタンを押すと、ファイル保存のダイアログが出てくるので、適当なところに保存しましょう。ファイル名はテーブル名が重複しないで分かりやすいので良いかもしれません。

同じ手順でテーブルの選択を変更してエクスポートします。以上でテーブル毎のエクスポートが完了です。

# データベース名をクリックする時に、テーブル名をクリックしてそこから個別のテーブルをエクスポートしても良いです。そっちの方がテーブル名=ファイル名となるのでいいかも?

*複数のテーブルをまとめてエクスポート

上記のテーブル毎のエクスポートですが、エクスポートするテーブルを選択する際に任意のテーブルを複数選択し、一括でエクスポートする事ができます。

個別に選択しているテーブルをキーボードの「Ctrl」を押しながらテーブル名を選択すると、複数選択でき、任意の複数のテーブルをまとめてエクスポートできます。他の手順は同じですが、ファイル名は重複しないように気を付けてください。

*ファイルの圧縮

最小のテーブル毎のエクスポートでも、残念ながらインポートのファイル制限容量に引っかかってしまった場合、エクスポートしたファイルを圧縮する事でアップロードできる可能性があります。

私の場合、アーカイバの「Explzh」を使って普通にzip圧縮を掛けアップロードすると上手くいきました。

1テーブルだけデータ容量が4MBになってしまい、移転先のファイル容量制限の2MBを越えてしまいました。phpMyAdminのファイルアップロードでのインポートでは、圧縮ファイルにも対応しているみたいなので、phpMyAdminにて指定されている圧縮形式の1つであるzip形式で圧縮を掛け、ファイル容量を500KBまで落としてからアップロードすると正常にインポートされました。

*インポート(データベース丸ごとエクスポートした場合)

移転先のサーバのデータベースにデータをインポートする場合、ログイン後の画面の右サイドにて「インポート」のリンクがあるのでクリックします。

インポート画面にて「ファイルをインポートする」項目の「テキストファイルの場所」の「参照」ボタンをクリックし、ファイル選択ダイアログが出てくるので、エクスポートしたデータを選択します。「実行」ボタンを押します。「インポートに成功しました。」とのメッセージが出れば成功です。

*インポート(テーブル毎にエクスポート or 複数のテーブルをまとめてエクスポートした場合)

テーブル毎にエクスポート、または複数のテーブルをまとめてエクスポートした場合は、phpMyAdminのログイン後の画面で左サイドのデータベース名をクリックします。

テーブル一覧の画面で(何もデータがなければテーブルも表示されない)「インポート」のリンクをクリックします。インポート画面にて「ファイルをインポートする」項目の「テキストファイルの場所」の「参照」ボタンをクリックし、ファイル選択ダイアログが出てくるので、エクスポートしたデータを選択します。「実行」ボタンを押します。「インポートに成功しました。x個の照会を実行しました。」とのメッセージが出れば成功です。エクスポートしたデータの数だけ同じ作業を繰り返してください。

*Movable Typeでの微調整

Movable Typeのインストールが完了している事を前提とし、ここでデータベースのデータの移行が正常に行われていれば、ログインユーザ登録をしていなくてもログイン画面が出てきます。このログイン画面では、移転前のユーザ名とパスワードでログインする事ができます。

ログイン後、一番にしなければならない事は、「設定」の「公開」画面にてサイトパスを移転後のサーバに合わせて変更する事です。

そのままだと移転前のサーバのパスとなってしまうので、移転後のサーバに合わせます。ドメインやサイトURLも変わっていれば、それも新しい設定に合わせ、「アーカイブ設定」もしていれば同様に新しいサーバに合わせます。以上で移転前と同様にMovable Typeを使う事ができます。これは同じ方法を用いれば、Movable Typeに限った事ではありません。

*補足:同じドメインを利用し続け、URLを変更せずにサーバのみ移転する場合の注意点

同じドメインを利用し、URLを変更せずにサーバのみ移転する場合はDNSの問題が発生します。

ドメインでDNSの変更をする前に、エクスポート作業を済ましておき、Movable Typeのシステム部分である動的ファイルの削除をし、静的ファイル(アーカイブ)を一度ローカルにダウンロードしておき、移転後のサーバに静的ファイルをアップロードしておきます。また移転後のサーバにアクセス可能であれば、Movable Typeのインストールとデータベースの移行をし、コメントやトラックバックを処理するスクリプトは削除しておく事など事前に済ませておくと良いでしょう。

DNSの浸透具合によっては、遅い場合はDNS設定変更後から1週間程移転前のサーバに繋がる事があります。データベースの整合性を取るために、移転前のサーバに繋がる場合は、エントリーの投稿を控えた方がよいでしょう。移転後のサーバに繋がるようになってからエントリーの投稿を再開しましょう。

また、静的ファイルを事前に移転後のサーバにアップロードしておけば、閲覧者が新旧どちらのサーバにアクセスしても記事は同じように表示されます。コメント、トラックバック処理のスクリプトに関しては、完全にDNSが浸透した頃にアップロードする事をお勧めします。

ドメインはそのままでサーバだけ移転すると、自分が移転先のサーバにアクセスできても、他の人が移転前のサーバに繋がっている事はよくある事です。DNSが完全に浸透する前に他の人が移転前のサーバに設置されているMovableTypeにコメントを残しても、移転先のサーバにはコメントが残らず、データベースの整合性も取れません。

そういう意味では何を以て完全な移行と言えるのかは私には分かりません。

Continue reading

Movable Type メインインデックスに現在の日時を表示する

Movable Typeのサイドバーに現在の日時を表示するようにしてみました。

これは表示したいページがPHP化されている事を前提とします。

現在の日時を表示したいところに以下のソースを入れてください。

<?php print date("Y/m/d H:i"); ?>

ハイ、この1行だけでOKです。多分、これだけでいいのは意外と知らない人が多いハズ。

サイドバーでデザインを整えたりするのならば、

<!-- 現在の日時 -->
<div class="side">
<div class="date-time"><?php print date("Y/m/d H:i"); ?></div>
</div>
<!-- 現在の日時 終了-->

このように整えたりするのがいいかもしれません。

データフォーマットについては以下を参照してください。

組み合わせ次第で和式にする事も、0を付けない形式の数字を表示する事も可能です。

和式例

<?php
$year = date("Y");
$today = date("年n月j日 G時i分s秒");
$year -= 1988;
print "平成$year$today\n";
?>

Movable Type カレンダーの今日の日付に装飾 改善

前回、Movable Type リアルタイムカレンダー カレンダーの今日の日付に装飾にてカレンダーで今日の場合に装飾をする設定をしましたが、レイアウト的にまだまだ問題点があるので、その改善を行いました。

*現在の状態、問題点

  • エントリーが有る日(背景色を変え、フォントをボールド、日付アーカイブにリンク)
  • エントリーが無く、且つ今日の日付(エントリー有りとは別の背景色)
  • エントリーが有り、且つ今日の日付(エントリー有りとは別の背景色、日付アーカイブにリンク)
  • エントリーが無い日(装飾無し)

つまり、現状では今日の日付で装飾がある場合、見た目では今日のエントリーが存在するかどうか分からない。日付アーカイブにリンクはしているので、マウスオーバーしてみないとリンクしているかどうかも分からない状態となっています。

*改善後

  • エントリーが有り、今日である
  • エントリーが無く、今日である
  • エントリーが有り、今日ではない
  • エントリーが無く、今日でもない

この4つを1つ1つスタイルシートのスタイルで定義するように改善しようかと思います。

*現在のソース

省略(前回参照)
<?php
  function mt_today($y, $m, $d) {
    $day = date("j");
    $year = date("Y");
    $month = date("m");
    if($year == $y && $month == $m && $day == $d) {
      print " class=\"today\"";
    }
  }
?>
<MTCalendar month="this"><MTCalendarWeekHeader><tr></MTCalendarWeekHeader>
<td<MTCalendarIfEntries><?php mt_today("<$MTCalendarDate format='%Y'$>", "<$MTCalendarDate format='%m'$>", "<$MTCalendarDay$>"); ?><MTEntries lastn="1"> class="calent"><a href="<$MTEntryLink archive_type="Daily"$>"><$MTCalendarDay$></a></MTEntries></MTCalendarIfEntries><MTCalendarIfNoEntries><?php mt_today("<$MTCalendarDate format='%Y'$>", "<$MTCalendarDate format='%m'$>", "<$MTCalendarDay$>"); ?>><$MTCalendarDay$></MTCalendarIfNoEntries><MTCalendarIfBlank>>&nbsp;</MTCalendarIfBlank></td>
<MTCalendarWeekFooter></tr></MTCalendarWeekFooter>
</MTCalendar>

*今回の改善

エントリーが有る状態のタグか、無い状態のタグかを判断するためにフラグを付け、引数としてmt_todayに引き渡しています。

mt_todayの中ではエントリーが有るある状態と無い状態と本日の3つを判断しています。引数の数値を増やし、同時に条件式も増やせば、ほぼ無制限で複数のスタイルを設定できます。

<?php
  function mt_today($y, $m, $d, $flag) {
    $day = date("j");
    $year = date("Y");
    $month = date("m");
    if ($year == $y && $month == $m && $day == $d) {
      if ($flag == 0) {
        print " class=\"today\"";
      } elseif ($flag == 1) {
        print " class=\"today-entry\"";
      }
    } elseif ($flag == 1) {
      print " class=\"calendar-entry\"";
    }
  }
?>
<MTCalendar month="this"><MTCalendarWeekHeader><tr></MTCalendarWeekHeader>
<td<MTCalendarIfEntries><?php mt_today("<$MTCalendarDate format='%Y'$>", "<$MTCalendarDate format='%m'$>", "<$MTCalendarDay$>", 1); ?><MTEntries lastn="1">><a href="<$MTEntryLink archive_type="Daily"$>"><$MTCalendarDay$></a></MTEntries></MTCalendarIfEntries><MTCalendarIfNoEntries><?php mt_today("<$MTCalendarDate format='%Y'$>", "<$MTCalendarDate format='%m'$>", "<$MTCalendarDay$>", 0); ?>><$MTCalendarDay$></MTCalendarIfNoEntries><MTCalendarIfBlank>>&nbsp;</MTCalendarIfBlank></td>
<MTCalendarWeekFooter></tr></MTCalendarWeekFooter>
</MTCalendar>

*スタイルシートの設定

設定した分だけのスタイルシートに記述を追加します。

.calendar .today {
  background-color: #eeeeee;
}
.calendar .today-entry {
  background-color: #eeeeee;
  font-weight: bold;
}
.calendar .calendar-entry {
  background-color: #99ffcc;
  font-weight: bold;
}

*結果

これで以下のようになりました。

  • エントリーが有る日(背景色を変え、フォントをボールド、日付アーカイブにリンク)
  • エントリーが無く、且つ今日の日付(エントリー有りとは別の背景色)
  • エントリーが有り、且つ今日の日付(エントリー有りとは別の背景色、フォントをボールド、日付アーカイブにリンク)
  • エントリーが無い日(装飾無し)

エントリーがある時は今日で有る無し関係なしにフォントがボールドとなっています。

これは、スタイルシートの設定次第でエントリーが有る時は背景色無しのボールド、今日の時は背景色のみ、今日且つエントリーが有る時は背景色とボールドというデザインにする事もできます。カレンダー全体にボーダーを設定していなければ、今日の場合で日付回りにボーダーを付ける事も可能です。

*その他の設定の参考

エントリーがある時は背景色無しのボールド、本日は背景色のみ、今日且つエントリーがある時は背景色とボールド

.calendar .today {
  background-color: #eeeeee;
}
.calendar .today-entry {
  background-color: #eeeeee;
  font-weight: bold;
}
.calendar .calendar-entry {
  font-weight: bold;
}

カレンダー全体にボーダーを設定していない場合で、今日の日付回りにボーダーを付ける場合。

.calendar .today {
  border: 1px solid #009900;
}
.calendar .today-entry {
  background-color: #99ffcc;
  border: 1px solid #009900;
  font-weight: bold;
}
.calendar .calendar-entry {
  background-color: #99ffcc;
  font-weight: bold;
}

他にも設定のしようはありますが、今回は割愛という事で...。

Movable Type 3.33 リリース & アップグレード

  • Posted by: 南野 せな
  • 2006年9月27日 01:45
  • Movable Type

Movable Type 3.33がリリースされたので、早速アップグレードしました。

今回のアップグレードは主に発見された脆弱性の修正とその他の細かい修正という事でした。それとバージョンが3並びで、ちょっと気に入ったので即アップグレードしました。しかも、脆弱性の修正よりも、3並びの方が自分の中でアップグレードさせる大きな要因になったという…。自分でもこんな理由は情けないと思いました(苦笑)。

前回のアップグレードはバージョン3.31で、しかも、3.3がリリースされた時に修正版が出るのを分かっていたので、3.31がリリースされて暫く様子を見て、「これで3.3xはfixだな」と思い込んで信じてアップグレードしたのに、見事に裏切られました。3.31をアップグレードして間もなく3.32がリリースされ、更には今回の3.33…。

今回のアップグレードは私の環境で一部のファイルを除き、全部上書きで特に設定の必要もありませんでした。一部のファイルとは管理画面用のCSSファイルです。バージョン3.3になってから管理画面の文字の小ささに苛つきを覚えてしまい、少なくとも普段よく使う投稿画面だけでも以前のフォントサイズにしようと大分弄り回してました。そこで、そのファイルまで上書きしてしまっては、検証しながら書き換えてきたスタイルがまたデフォルトになってしまうので、CSSファイルをローカルにバックアップしてからバージョン3.33のファイルを全アップロード。アップロードが終了したら、バックアップしたCSSファイルだけをアップロードしました。

メモ。管理画面用CSSファイルの場所。

システムルートディレクトリ/mt-static/styles_ja.css & styles.css

もう3.3xでアップグレードする必要はない…よな…?

Movable Type リアルタイムカレンダー カレンダーの今日の日付に装飾

  • Posted by: 南野 せな
  • 2006年9月19日 05:04
  • Movable Type

以前から考えていたカレンダーの今日の日付の背景色を変える設定をしました。

*カレンダー今日の日付を判別

Movable Tyepのカレンダーで今日の日付を判別するタグがあります。

Movable Type 3.3 マニュアル: テンプレート・タグ リファレンス MTCalendarIfToday

MTCalendarIfToday
セルが今日の日付であったときに処理する条件タグです。
対応しているバージョン
3.1, 3.2, 3.3, Enterprise 1.0
利用方法
<MTCalendarIfToday> ? </MTCalendarIfToday>

しかし、このタグだと再構築した時にしか反映されません。つまり、数日を過ぎても再構築をしなかったら最後に再構築をした日にしか装飾されません。毎日必ず0時過ぎに再構築をするような人でなければ意味がありません。

そこで、カレンダーのタグとPHPを組み合わせて今日の日付を判別する事にします。

*該当ページのPHP化

サーバが既にPHPに対応している事を前提で、今回はメインインデックス(index.html)のみPHP化をします。

「メイン・メニュー > (該当ブログ名) > テンプレート」のページにて「メインページ(index.html)」でテンプレート編集画面に移ります。「出力ファイル名」が「index.html」となっているのを「index.php」に変更、1行目が

<?xml version="1.0" encoding="<$MTPublishCharset$>"?>

と、なっているのをPHP形式の

<? echo('<?xml version="1.0" encoding="<$MTPublishCharset$>"?>') ?>

に変更します。保存&再構築をしてPHP化の完了です。

*スタイルシートの編集

「メイン・メニュー > (該当ブログ名) > テンプレート」の「スタイルシート(styles-site.css)」の編集画面に移ります。

カレンダーのスタイルを設定している辺りに以下を挿入します。

.calendar .today {
   background-color: #eeeeee;
}

カレンダーで今日の背景色をグレーに変更する設定です。 # ちょいデザイン的によろしくないのですが、これは(仮)という事で(汗)。

*今までのソース

これから弄る今までのソースです。

<!-- カレンダー開始 -->
<div class="side">
<div class="calendar">
<MTArchiveList archive_type="Monthly" lastn="1">
<table summary="投稿されたエントリーへのリンク付き月間カレンダー">
<caption>
<MTArchivePrevious><a href="<$MTArchiveLink$>" title="<$MTArchiveTitle$>">&lt;&lt;</a></MTArchivePrevious>
<a href="<$MTArchiveLink$>"><$MTArchiveDate format="%B %Y"$></a>&gt;&gt;
</caption>
<tr>
<th abbr="日曜日" style="color:#cc9999">日</th>
<th abbr="月曜日">月</th>
<th abbr="火曜日">火</th>
<th abbr="水曜日">水</th>
<th abbr="木曜日">木</th>
<th abbr="金曜日">金</th>
<th abbr="土曜日" style="color:#9999cc">土</th>
</tr>
<MTCalendar month="this"><MTCalendarWeekHeader><tr></MTCalendarWeekHeader>
<td<MTCalendarIfEntries><MTEntries lastn="1"> class="calent"><a href="<$MTEntryLink archive_type="Daily"$>"><$MTCalendarDay$></a></MTEntries></MTCalendarIfEntries><MTCalendarIfNoEntries>><$MTCalendarDay$></MTCalendarIfNoEntries><MTCalendarIfBlank>>&nbsp;</MTCalendarIfBlank></td>
<MTCalendarWeekFooter></tr></MTCalendarWeekFooter>
</MTCalendar>
</table>
</MTArchiveList>
</div>
</div>
<!-- カレンダー終了 -->

サイドバー自体をモジュール化していますが、メインインデックスに直接書き込んでもソースは同じです。これを元にして編集していきます。

*プログラムの編集(参考ソース)

リアルタイムカレンダーに編集するに辺り、以下のページを参考にしました。

小粋空間 : リアルタイムカレンダー(改)

その中でも私の場合は「2.2 月送りカレンダーの場合」に当てはまり、利用したのは以下のソースです。

<?php $day = date("j"); $year = date("Y"); $month = date("m"); ?>

<MTCalendar month="this">

<MTCalendarWeekHeader><tr></MTCalendarWeekHeader>

<MTCalendarIfEntries>

<?php $y="<$MTCalendarDate format='%Y'$>"; $m="<$MTCalendarDate format='%m'$>"; $d="<$MTCalendarDay$>"; if($year == $y && $month == $m && $day == $d) { $style = " class=\"today\""; } else { $style = ""; } ?>

<td align="center"<?php print "$style"; ?>><span class="calendar"><MTEntries lastn="1"><a href="<$MTEntryLink archive_type="Daily"$>" target="_top"><$MTCalendarDay$></a></MTEntries></span></td>

</MTCalendarIfEntries>

<MTCalendarIfNoEntries>

<?php $y="<$MTCalendarDate format='%Y'$>"; $m="<$MTCalendarDate format='%m'$>"; $d="<$MTCalendarDay$>"; if($year == $y && $month == $m && $day == $d) { $style = " class=\"today\""; } else { $style = ""; } ?>

<td align="center"<?php print "$style"; ?>><span class="calendar"><$MTCalendarDay$></span></td>

</MTCalendarIfNoEntries>

<MTCalendarIfBlank><td>&nbsp;</td></MTCalendarIfBlank>

<MTCalendarWeekFooter></tr></MTCalendarWeekFooter>

</MTCalendar>

しかし、当然このままコピー&ペーストしても使えないので、自分用に以下のソースへ変更しました。

省略

<?php $day = date("j"); $year = date("Y"); $month = date("m"); ?>
<MTCalendar month="this"><MTCalendarWeekHeader><tr></MTCalendarWeekHeader>
<td<MTCalendarIfEntries><?php $y="<$MTCalendarDate format='%Y'$>"; $m="<$MTCalendarDate format='%m'$>"; $d="<$MTCalendarDay$>"; if($year == $y && $month == $m && $day == $d) { $style = " class=\"today\""; } else { $style = ""; } print "$style"; ?><MTEntries lastn="1"> class="calent"><a href="<$MTEntryLink archive_type="Daily"$>"><$MTCalendarDay$></a></MTEntries></MTCalendarIfEntries><MTCalendarIfNoEntries>
<?php $y="<$MTCalendarDate format='%Y'$>"; $m="<$MTCalendarDate format='%m'$>"; $d="<$MTCalendarDay$>"; if($year == $y && $month == $m && $day == $d) { $style = " class=\"today\""; } else { $style = ""; } print "$style"; ?>><$MTCalendarDay$></MTCalendarIfNoEntries><MTCalendarIfBlank>>&nbsp;</MTCalendarIfBlank></td>
<MTCalendarWeekFooter></tr></MTCalendarWeekFooter>
</MTCalendar>

ここで、<MTCalendarIfEntries>と<MTCalendarIfNoEntries>が同じプログラムを使っている事が分かり、余り綺麗なプログラムではないと思い改良に入りました。

*プログラムの編集(改良)

改良の結果は以下の通りです。

<?php

function mt_today($y, $m, $d) {

$day = date("j");

$year = date("Y");

$month = date("m");

if($year == $y && $month == $m && $day == $d) {

print " class=\"today\"";

}

}

?>

<MTCalendar month="this"><MTCalendarWeekHeader><tr></MTCalendarWeekHeader>

<td<MTCalendarIfEntries><?php mt_today("<$MTCalendarDate format='%Y'$>", "<$MTCalendarDate format='%m'$>", "<$MTCalendarDay$>"); ?><MTEntries lastn="1"> class="calent"><a href="<$MTEntryLink archive_type="Daily"$>"><$MTCalendarDay$></a></MTEntries></MTCalendarIfEntries><MTCalendarIfNoEntries>

<?php mt_today("<$MTCalendarDate format='%Y'$>", "<$MTCalendarDate format='%m'$>", "<$MTCalendarDay$>"); ?>><$MTCalendarDay$></MTCalendarIfNoEntries><MTCalendarIfBlank>>&nbsp;</MTCalendarIfBlank></td>

<MTCalendarWeekFooter></tr></MTCalendarWeekFooter>

</MTCalendar>

同じプログラムの部分はfunction関数を使い、関数呼び出し時の引数に<$MTCalendarDate$>タグを入れました。

最初、<$MTCalendarDate$>はfunction内で使っていたのですが、このタグは<MTCalendarIfEntries>タグや<MTCalendarIfNoEntries>タグ内でしか使えないという事で、引数にする事で対応しました。

あとプログラムをよりスマートにするためにif文の中にprint文を入れ、else文は省略しました。どうせelseの中はnullだったのですから。

今までPHPは既に出来上がったプログラムを設置しただけで、実際に編集して動かしたのは初めてでしたが何とかできましたー。はふぅ...。

*その他

私の場合、メインインデックスをPHP化する時にhtmlファイルとphpファイルの両方を作ったので、index.phpを優先的に表示する設定も.htaccessで行いました。

DirectoryIndex index.php index.html index.htm

.htaccessの動き、詳細記述については検索を掛けてください...。

ブログの自己設置システムタイプでブログサーチエンジンに拾われるには

*ブログ専用サーチエンジン

ブログブームに連れ、出現してきたブログ専用サーチエンジン。中でも有名所を簡単に挙げます。(独断と偏見を含む。)

# サーチエンジンの母体とデータ元が何処か分からないので、検索結果が被っているところもあるかと。

*ブログ専用サーチエンジンの解析

色々なブログサーチエンジンの検索結果を調べてみると、Yahoo、livedoor等のポータルサイトやブログをレンタルし且つブログサーチエンジンの両方を運用している様なブログシステムでは、記事を投稿すると同時にサーチエンジンにデータを送信している様で、投稿と同時に投稿内容をサーチエンジンに即反映し、その上で更に他のサーチエンジンにもデータを共用、反映させている様でした。プロバイダのレンタルブログでも、提携先のサーチエンジンにデータを送信しているのでしょう。

Movable Typeが元となっているレンタルブログシステムのTypePad系、tDiaryをレンタル用にしているはてなダイアリーではサーチエンジンに拾われていたので、システムの問題ではないのが分かります。また、自己設置システムタイプでサーチエンジンに拾われている所は少なかったです。

そこでいくつかのサーチエンジンで登録方法を確認したのですが、検索結果に反映されるには、どうやらエントリーの投稿時にトラックバックを送るのと同じ様にPingを送ればいいのが殆どでした。

Ping送信で対応するのはGoogle(エンジン母体(データ元)はweblogs.com?)、Yahoo、goo、テクノラティでした。Web上にてサーチエンジンにURIを申請登録するタイプはlivedoorのみ。両方に対応しているのはテクノラティだけでした。

*ブログサーチエンジンのPing送信先

そこで、自分のWeblogをサーチエンジンに反映させるため、Ping送信するタイプのサーチエンジンは、今後、記事を投稿すると同時に自動的にPingを送る設定をする様にしました。

それぞれのPing送信先は以下の通りです。

Google Blog Search (weblogs.com)
http://rpc.weblogs.com/RPC2
Yahoo!ブログ検索 (ベータ版)
http://api.my.yahoo.co.jp/RPC2
goo ブログ
http://blog.goo.ne.jp/XMLRPC
テクノラティ (ジャパン)
http://rpc.technorati.jp/rpc/ping
テクノラティ (ジャパン)
URI申請登録ページ
livedoor 検索 ブログ
URI申請登録ページ

*サーチエンジン以外のPing送信について参考サイト

*Movable Typeでの設定方法

このブログシステム、Movable Typeでは次の様に設定します。

メイン・メニュー > 設定するブログ名 > 新規投稿の設定(詳細モード) > 更新Ping/トラックバックの設定 でweblogs.comに関してはチェックを入れるだけ、他のは「その他: (複数のURLを入力する場合は、改行してください。)」で直接URIを指定します。

20060916_Ping.jpg

これで記事を投稿する度に自動的にサーチエンジン側にデータを送信する事になります。数回投稿、数日もすれば反映されるハズ?です。

Continue reading

Movable Type 3.31にアップデート

  • Posted by: 南野 せな
  • 2006年7月27日 23:05
  • Movable Type

このBlogのシステム、Movable Typeをバージョン3.2から3.31にアップデートしました。

自宅サーバの方はすぐに3.3を導入して、本稼働のこっちは様子見していたのですが、案の定、不具合が出たので、修正版がリリースされるのを待ち、更にその修正版でも不具合報告がされないのを確認してからアップデートしました。

新機能としてタグが使えるようになりました。えーと、はてなのキーワードリンクみたいなもんです。HTMLタグの事ではありませんよw

管理画面も多少変わりました。でも、至る所で文字サイズが小さくなっているので見にくいです。個人的には12ポイント、16ピクセルが好みなんですけどねぇ...。一番小さな文字が7~8ピクセルくらいになっているみたいなんですよ。見えないって(苦笑)。

ついでなんでレイアウトもちょいと弄ってみました。横幅が狭いブラウザでは投稿者情報が1行じゃ収まりきれなくなっていると思うので、複数項目を持つカテゴリとタグはそれだけで1行ずつ使う事にしました。あと、同日付のエントリーが複数ある場合、投稿時間表示だけでは日付をスクロールしないと分からないかと思い、投稿時間は日時を表示するようにしました。個別エントリーでカテゴリが表示されていないのも近日中に表示するつもりです。

mt4iもマイナーバージョンアップしていたので、ついでにアップデート。

mt4i導入テスト

  • Posted by: 南野 せな
  • 2006年7月13日 12:37
  • Movable Type

mt4iを導入したのでテスト投稿です。

以前のバージョンは失敗したので。

データベースでテーブルの接頭語の変更は?

  • Posted by: 南野 せな
  • 2006年7月12日 00:52
  • Movable Type

文字コードの変更で失敗したと思いこみ、システムの入れ替えを行った時に、Movable Typeで使われるデータベースでテーブルの接頭語の変更ができないかと思いました。

デフォルトではテーブルの接頭語は「mt_」となっており、他のシステムのテーブルと重複しないようになっています。XOOPSやWord Pressでは接頭語の設定が任意にできるみたいですが、Movable Typeではそのような設定は見当たりませんでした。

Movable Typeのスクリプト全てをgrepにかけて該当部分を探したのですが、やはりプログラムから変更する必要があるらしく、設定でどうにかできそうにありませんでした。

Movable Type 3.3よりライセンス形態が変わり、個人利用でも1サーバにつき投稿者数とブログ数が無制限となったので、前提としてそんな設定は必要ないのでしょうが、バージョン毎の設置は不可能なのだと思いました。

Continue reading

文字コードの変更

このBlogの文字コードを変更しました。

現在使っているMovable Typeで私は何を血迷ったのか文字コードの設定を「Shift_JIS」にしており、その弊害として、EUC-JPで設定されているブログにトラックバックを送信すると、相手側で文字化けを起こしていました。

今回、文字コードを「Shift_JIS」から「utf-8」の変換するのに、既存エントリーの文字コードの関係もあり、Movable Typeの設定ファイル、mt-config.cgiの文字コードをただ単に

PublishCharset utf-8

に変えれば済むという話ではないので、Movable Type の文字コード変換スクリプトを使わせていただく事にしました。

使い方は簡単。何も設定する事はないので、ダウンロードしたファイルを解凍し、アップロードし、アクセスすればいいだけです。アクセスした後は現在の文字コードと変換後の文字コードの指定をし、Convertボタンを押すだけです。Convertボタンを押すとすぐに変換中のエントリーの一覧が出てくるので、それが終了するのを待つだけ。successfulの文字が出てきたら、アップロードしたスクリプトをサーバから削除し、再構築して、いざ確認!

……文字化けしてるー!!

文字化けの原因を確認すべく、ブラウザの現在選択されている文字エンコーディングを見てみると、何故か「Shift_JIS」になってる。そこで、「utf-8」に選択し直すとちゃんと表示される。だけど、リロードしてみるとまた勝手に「Shift_JIS」になり文字化けを起こす。何でだろうかとバックアップを取ってエントリーを全部削除してみたり、最終的にはMovable Typeの入れ替えまで行ったが、結局ブラウザの文字コード選択による文字化けは直らなかった…。

普通はMovable Typeの入れ替えまでしたら文字化けは直るはずだよな…。などと思いつつ、ふとある存在に気が付いた。

それは、一つ上のディレクトリに置いている「.htaccess」の存在。早速中身を見てみると、原因となる行がありましたよ!なんかね

AddType "text/html; charset=Shift_JIS" .html .htm

とか、書いているんですよ。そりゃ、utf-8にならんわな、と納得。この行を削除し、アップロードすると文字化けはあっさりと解決。つまり、文字コードの変換自体は成功していたんですね…(泣)。

そんなわけで、する必要もないシステムの入れ替えまでしてしまいました。まぁ、これが切っ掛けで前々から考えていた構成に入れ替える事もできたわけですが。

2カラム左サイドバーリキッドレイアウト対応テンプレートに変更

  • Posted by: 南野 せな
  • 2006年3月19日 23:42
  • Movable Type

衝動的に前々から変えたいと思っていたMovable Typeのデザインを変更しました。

別にデフォルトテンプレートでも良かったのですが、どうしてもリキッド(可変)レイアウトに変えたくて何度も試行錯誤していました。

しかし、Movable Type 3.2のデフォルトテンプレートではメインページとスタイルシートの設定が細かすぎて逆に分かりにくくなり、失敗を繰り返しては自分のイメージしたレイアウトにはなってくれませんでした。

できればデフォルトテンプレートを崩さずにデザインの変更をしたかったのですが、いい加減不必要な程のデザイン設定に苛立たしさを覚えてしまい、最初からリキッドレイアウトに対応した小粋空間さんのテンプレートを使う事にしました。

最初はPlug-inのStyleCatcherを利用してデザイン変更したのですが、2カラムの左サイドバーリキッドレイアウトに変更したらレイアウト崩れを起こしてしまったので、テンプレートの内容毎入れ替えを行い、2カラムの左サイドバーリキッドレイアウトの設定を行うと上手くいきました。

このままでは配色や配置、設定などに気になるところがあるので、また今度変更しようと思います。

とりあえず今回は、2カラム左サイドバーリキッドレイアウトに変更できたという事で。

jigブラウザ

jigブラウザ(正式版)からの投稿テストです。

初回起動時に無料で5ページ表示できるのですが、どこまで確認できるでしょうか…。

フリー版では、投稿画面まで来れなかったのですが、正式版では来れました。再構築まで行けるといいのですが…。

Continue reading

Movable Type メインインデックスからエントリーの編集画面へ

  • Posted by: 南野 せな
  • 2006年1月17日 22:38
  • Movable Type

Movable Typeでログインページからログインしなくてもエントリーの編集画面に飛べるようにしました。

例えば、メインインデックス(index.html)で誤字を見付け、編集を掛けたいと思います。しかし、デフォルトでは、一回ログインページに飛び、ログインし、エントリーを選択してやっと編集画面にまで辿り着きます。

次の設定では、インデックスページから直接ログインページに行け、ログインすると該当エントリーの編集画面に行けます。

<a href="<$MTCGIPath$>mt.cgi?__mode=view&_type=entry&id=<$MTEntryID$>&blog_id=<$MTBlogID$>">EDIT</a>

この記述をテンプレートの「メインインデックス」、「エントリー・アーカイブ」、「日付アーカイブ」(カテゴリアーカイブも変更したければ、「カテゴリー・アーカイブ」も含む)中の該当部分に記述します。投稿者、日時などの情報を記述している辺りが丁度良いのではないでしょうか。

ただ、私の場合、これ以上記述すると情報部分が折り返されるので、なるべく折り返さなくてもいいように、投稿者名にリンクを張るようにしました。

デフォルトでは

<span class="post-footers">投稿者 : <$MTEntryAuthorDisplayName$> |

となっているのを

<span class="post-footers">投稿者 :
<a href="<$MTCGIPath$>mt.cgi?__mode=view&_type=entry&id=<$MTEntryID$>&blog_id=<$MTBlogID$>">
<$MTEntryAuthorDisplayName$></a> |

に変更しました。

これで、インデックスやアーカイブから直接編集画面に飛ぶ事ができます。

Movable Type カスタマイズ

暇なので、集中講義の時間を使ってまたMovable Typeのカスタマイズをしました。

今回のカスタマイズは以下の通り。

  • カレンダーのデザインの変更(多分これが最終?)
  • カレンダーの今月の月別アーカイブへのリンク
  • カレンダーの日別アーカイブへのリンク改善
  • インデックスのカテゴリ、アーカイブへエントリー数の表示

今までのカスタマイズに比べると大した事ではありませんね。

カレンダーのデザインの変更

カレンダーのエントリーが存在する日にリンクを張るようになっていますが、そのデザインを少々変更しました。変更箇所は以下の通り。

#calendar td.calent {
 background-color: #d7e2ef;
 font-weight: bold;
}

#calendar td.calent a {
 text-decoration: none;
}

エントリーが存在する日のリンクの文字を太字にし、下線を消しました。

また、土曜と日曜の文字色も以下のように変更しました。

<tr>
<th abbr="日曜日" style="color:#cc9999">日</th>
<th abbr="月曜日">月</th>
<th abbr="火曜日">火</th>
<th abbr="水曜日">水</th>
<th abbr="木曜日">木</th>
<th abbr="金曜日">金</th>
<th abbr="土曜日" style="color:#9999cc">土</th>
</tr>

カレンダーの今月の月別アーカイブへのリンク

インデックスのカレンダーには現在の年月が表示されていますが、調べてみると、これにもリンクできるようです。早速設定してみました。

前回まで

    <MTArchiveList archive_type="Monthly" lastn="1">
    <table summary="投稿されたエントリーへのリンク付き月間カレンダー">
     <caption>
     <MTArchivePrevious><a href="<$MTArchiveLink$>" title="<$MTArchiveTitle$>">&lt;&lt;</a></MTArchivePrevious>
     <$MTArchiveTitle$>&gt;&gt;
     </caption>

今回の変更

    <MTArchiveList archive_type="Monthly" lastn="1">
    <table summary="投稿されたエントリーへのリンク付き月間カレンダー">
     <caption>
     <MTArchivePrevious><a href="<$MTArchiveLink$>" title="<$MTArchiveTitle$>">&lt;&lt;</a></MTArchivePrevious>
     <a href="<$MTArchiveLink$>"><$MTArchiveDate format="%B %Y"$></a>&gt;&gt;
     </caption>

ほんの少しの変更で済みました。

参考:サイト「nlog(n)」さんの「nlog(n): メインインデックスのカレンダーに前月へのリンクを作るには

カレンダーの日別アーカイブへのリンク改善

Movable Type カレンダーの日別リンクを表示では

URIが「http://日別アーカイブ/#エントリーID」となっており、最後にエントリーIDが付加されているのが少し気になる

と書きましたが、色々と調べているうちにこの最後のエントリーIDを付けない正常なリンクが張れるようになりました。

前回までは以下のようになっていました。

<td<MTCalendarIfEntries><MTEntries lastn="1"> class="calent"><a href="<$MTEntryPermalink archive_type="Daily"$>"><$MTCalendarDay$></a></MTEntries></MTCalendarIfEntries>
<MTCalendarIfNoEntries>><$MTCalendarDay$></MTCalendarIfNoEntries>
<MTCalendarIfBlank>> </MTCalendarIfBlank></td>

今回の変更

<td<MTCalendarIfEntries><MTEntries lastn="1"> class="calent"><a href="<$MTEntryLink archive_type="Daily"$>"><$MTCalendarDay$></a></MTEntries></MTCalendarIfEntries>
<MTCalendarIfNoEntries>><$MTCalendarDay$></MTCalendarIfNoEntries>
<MTCalendarIfBlank>> </MTCalendarIfBlank></td>

サイト「小粋空間」さんの「MTEntryLinkとMTEntryPermalinkについて」を読んで「もしかすると…」と思って試してみたら成功しました。

インデックスのカテゴリ、アーカイブへエントリー数の表示

エントリー数を表示するにはアーカイブタグ内の該当するところに「<$MTArchiveCount$>」を記述すればいいだけです。インデックスのカテゴリと月別アーカイブに表示させるように設定をしました。

カテゴリ

<MTTopLevelCategories>
<MTSubCatIsFirst><ul class="module-list"></MTSubCatIsFirst>
<MTIfNonZero tag="MTCategoryCount">
<li class="module-list-item"><a href="<$MTCategoryArchiveLink$>" title="<$MTCategoryDescription$>"><MTCategoryLabel></a> (<$MTArchiveCount$>)
<MTElse>
<li class="module-list-item"><MTCategoryLabel> (<$MTArchiveCount$>)
</MTElse>
</MTIfNonZero>
<MTSubCatsRecurse>
</li>
<MTSubCatIsLast></ul></MTSubCatIsLast>
</MTTopLevelCategories>

月別アーカイブ

<MTArchiveList archive_type="Monthly">
<MTArchiveListHeader><ul class="module-list"></MTArchiveListHeader>
<li class="module-list-item"><a href="<$MTArchiveLink$>"><$MTArchiveTitle$></a> (<$MTArchiveCount$>)</li>
<MTArchiveListFooter></ul></MTArchiveListFooter>
</MTArchiveList>
</div>
</div>
</MTIfArchiveTypeEnabled>

こーやってエントリー数を表示させてみると自分のWeblogに対する投稿の傾向が見えてきました(苦笑)。

Movable Type トラックバックのPing送信時エラー

トラックバックのPingを送る時にどうしてもエラーが出てしまう。一応その対策をしてみました。

Movable Typeはエントリー投稿時に他サイトへリンクを張っていると自動的にリンク先のWebPageを解析し、Ping送信可能であれば自動的にPingを送信しトラックバックを送る仕組みになっている。

しかし、ここ数回、エントリーに他サイトのURIを含む事が多く、トラックバックを送信する回数も多い。が、同じ分だけエラーが出る。

ここ数回のカレンダーのカスタマイズ関連で他のWeblogを巡回していたら、トラックバックについての解説があり、エラー時の対策も書いていたのでそれをやってみた。

mt-config.cgi line304

# PingTimeout 20

となっているのをコメントアウトし、数値も60秒としてみた。

mt-config.cgi line304

PingTimeout 60

まだPing送ってないので、これで効果があるかどうかは不明。

参考:サイトnlog(n)さんのトラックバック送信時のエラー

Continue reading

Movable Type カレンダーのエントリーがある日の背景色を変える

Movable Type メインページにカレンダーを表示Movable Type カレンダーに前月アーカイブへのリンクを作るMovable Type カレンダーの日別リンクを表示の続きです。

今度はエントリーが存在する日のカレンダーの背景色を変えるように挑戦してみました。今回は珍しくどっかのサイトを参考にせずに自分で色々と試してみました。

現在のカレンダーのタグは以下のようになっています。

<td<MTCalendarIfToday> class="today"</MTCalendarIfToday>>
<MTCalendarIfEntries><MTEntries lastn="1"><a href="<$MTEntryPermalink archive_type="Daily"$>"><$MTCalendarDay$></a></MTEntries></MTCalendarIfEntries>
<MTCalendarIfNoEntries><$MTCalendarDay$></MTCalendarIfNoEntries><MTCalendarIfBlank> </MTCalendarIfBlank></td>

Movable Typeの解説本によると

<MTCalendarIfToday>~</MTCalendarIfToday>

カレンダーの日付と「今日が一致する時だけ囲んだ範囲を表示する条件タグ

<MTCalendarIfEntries>~</MTCalendarIfEntries>

エントリーが登録されている日だけ囲まれた内容を表示する条件タグ

<MTCalendarIfNoEntries>~</MTCalendarIfNoEntries>

エントリーが登録されていない日だけ囲まれた内容を表示する条件タグ

<$MTCalendarDay$>

カレンダーの日付を表示するタグ
ただし、このタグは<MTCalendarIfEntries>コンテナか<MTCalendarIfNoEntries>コンテナの内側で使う事

との解説なので、まず、「<MTCalendarIfToday>」は必要ないから削除。あとは、「<MTCalendarIfEntries>」辺りと「<MTCalendarIfNoEntries>」辺りをあたって…、以下のようになりました。

<td<MTCalendarIfEntries><MTEntries lastn="1"> class="calent"><a href="<$MTEntryPermalink archive_type="Daily"$>"><$MTCalendarDay$></a></MTEntries></MTCalendarIfEntries>
<MTCalendarIfNoEntries>><$MTCalendarDay$></MTCalendarIfNoEntries>
<MTCalendarIfBlank>> </MTCalendarIfBlank></td>

スタイルシートも以下の記述を追加

#calendar td.calent {
 background-color: #d7e2ef;
}

これで再構築して完成。上手くいきました。

注意点として「td」タグの「>」をエントリーが無い時、カレンダーの日付が無い時のそれぞれに付けないといけません。

長かったカレンダーのカスタマイズもこれで終わりです。またなんかしたくなったら挑戦してみます。

Movable Type カレンダーの日別リンクを表示

Movable Type メインページにカレンダーを表示Movable Type カレンダーに前月アーカイブへのリンクを作るの続きです。

さて、ここまでカスタマイズを済ませたところでふと気付きました。

それはカレンダーの日付のリンクが日別アーカイブへのリンクではなく、複数エントリー投稿があった場合、最後の個別エントリーにリンクしている事です。これじゃ、カレンダーの日付にリンク張っている意味無いよー。

てなわけで、カレンダーに日付にリンクするのが、日別アーカイブにリンクするような方法を探してみました。すると、「nlog(n)」さんの「日付別アーカイブへのリンク」というのが出てきました。

それによるとデフォルトでは

<MTCalendarIfEntries><MTEntries lastn="1">
<a href="<$MTEntryPermalink$>"><$MTCalendarDay$></a>
</MTEntries></MTCalendarIfEntries>

ですが、それを

<MTCalendarIfEntries><MTEntries lastn="1">
<a href="<$MTEntryPermalink archive_type="Daily"$>"><$MTCalendarDay$></a>
</MTEntries></MTCalendarIfEntries>

とするだけでいいみたいです。

早速自分のを変更してみました。

<td<MTCalendarIfToday> class="today"</MTCalendarIfToday>><MTCalendarIfEntries><MTEntries lastn="1"><a href="<$MTEntryPermalink archive_type="Daily"$>"><$MTCalendarDay$></a></MTEntries></MTCalendarIfEntries><MTCalendarIfNoEntries><$MTCalendarDay$></MTCalendarIfNoEntries><MTCalendarIfBlank> </MTCalendarIfBlank></td><MTCalendarWeekFooter></tr></MTCalendarWeekFooter>
</MTCalendar>

となりますね。んー、簡単。

再構築して確認すると、確かに日別アーカイブへのリンクとなっているのですがURIが「http://日別アーカイブ/#エントリーID」となっており、最後にエントリーIDが付加されているのが少し気になるのですが、動作には支障がないので、気にしなければいいかなと思っています。

 これで、カレンダーの日付で日別アーカイブへのリンクが張るようになりました。

まだまだ続きます。

Movable Type カレンダーに前月アーカイブへのリンクを作る

Movable Type メインページにカレンダーを表示の続きです。

今度は設置したカレンダーに前月アーカイブへのリンクを作る事にしました。以前から目を付けていたのはサイト「お気楽極楽ブログ」さんの「カレンダーのカスタマイズ」です。

<$MTDate format="%B %Y"$>
<script language="JavaScript"><!--
dat=new Date(); yea=dat.getYear(); if (yea < 2000) yea = yea + 1900;mon=dat.getMonth(); document.write('<a href="<MTBlogURL>archives/'); document.write(yea);
if(mon == "0") { document.write('/12');}else if(mon < "10") { document.write('/0'); document.write(mon);} else{ document.write('/'); document.write(mon);}
document.write('/index.html">≪</a> ');
// -->
</script>

でもこれだとJavaScriptを使うし、エントリーフォーマットを変更した場合は、その都度フォーマットに合わせて書き換える必要があります。そこでMovable Typeのタグだけでどうにかならないかと、もう少し検索を掛けてみるとありました。

サイト「CEFA::Blog」さんの「カレンダーに前月・次月へのアンカーを作る」です。

ここの解説ではモジュールを作成して月別アーカイブ内のカレンダーにも適用できるようになっています。

モジュール

<div id="calendar">
<table summary="投稿されたエントリーへのリンク付き月間カレンダー">
<caption>
<MTArchivePrevious>
<a href="<$MTArchiveLink$>" title="<$MTArchiveTitle$>">&laquo;&#160;</a>
</MTArchivePrevious>
<$MTArchiveTitle$>
<MTArchiveNext>
<a href="<$MTArchiveLink$>" title="<$MTArchiveTitle$>">&#160;&raquo;</a>
</MTArchiveNext>
</caption>
<tr>
<th class="Sun" abbr="Sunday">Sun</th>
<th abbr="Monday">Mon</th>
<th abbr="Tuesday">Tue</th>
<th abbr="Wednesday">Wed</th>
<th abbr="Thursday">Thu</th>
<th abbr="Friday">Fri</th>
<th class="Sat" abbr="Saturday">Sat</th>
</tr>
<MTCalendar month="this">
<MTCalendarWeekHeader><tr></MTCalendarWeekHeader>
<td<MTCalendarIfToday> class="today"</MTCalendarIfToday>><MTCalendarIfEntries><MTEntries lastn="1"><a href="<$MTEntryPermalink$>"><$MTCalendarDay$></a></MTEntries></MTCalendarIfEntries><MTCalendarIfNoEntries><$MTCalendarDay$></MTCalendarIfNoEntries><MTCalendarIfBlank> </MTCalendarIfBlank></td><MTCalendarWeekFooter></tr></MTCalendarWeekFooter>
</MTCalendar>
</table>
</div>

 

メインインデックスへの実装

メインインデックス(index.php)への実装はカレンダーを表示したい部分に次のように記述します。尚<MTArchiveList>で括っていないとエラーが出ますので注意してください。テンプレート・モジュールを使わない実装の場合はMTIncludeの箇所に前述のテンプレートを直接貼り付けてください。

<div id="right">
<MTArchiveList archive_type="Monthly" lastn="1">
<$MTInclude module="Calendar Archives"$>
</MTArchiveList>
 
<div class="sidebar">

との事なので、コレをメインインデックスのみの自分用にして以下の様になりました。

   <h2 class="module-header">カレンダー</h2>
   <div class="module-content">
    <div id="calendar">
    <MTArchiveList archive_type="Monthly" lastn="1">
    <table summary="投稿されたエントリーへのリンク付き月間カレンダー">
     <caption>
     <MTArchivePrevious><a href="<$MTArchiveLink$>" title="<$MTArchiveTitle$>">&lt;&lt;</a></MTArchivePrevious>
     <$MTArchiveTitle$>
     &gt;&gt;
     </caption>
      <tr>
       <th abbr="日曜日">日</th>
       <th abbr="月曜日">月</th>
       <th abbr="火曜日">火</th>
       <th abbr="水曜日">水</th>
       <th abbr="木曜日">木</th>
       <th abbr="金曜日">金</th>
       <th abbr="土曜日">土</th>
      </tr>
     <MTCalendar month="this">
     <MTCalendarWeekHeader><tr></MTCalendarWeekHeader>
      <td<MTCalendarIfToday> class="today"</MTCalendarIfToday>><MTCalendarIfEntries><MTEntries lastn="1"><a href="<$MTEntryPermalink$>"><$MTCalendarDay$></a></MTEntries></MTCalendarIfEntries><MTCalendarIfNoEntries><$MTCalendarDay$></MTCalendarIfNoEntries><MTCalendarIfBlank> </MTCalendarIfBlank></td><MTCalendarWeekFooter></tr></MTCalendarWeekFooter>
      </MTCalendar>
     </table>
    </MTArchiveList>
    </div>
   </div>

変更した箇所はまず、前月へのテキスト。コレは「≪」だったのを私の好みで「<<」に変更。次に翌月へのアーカイブタグを全て消し、「>>」にした。なぜこの様な事にしたかというと、メインページでは翌月のエントリーが基本的に存在しないので、このリンクを作っても、リンクその物が表示されなくなってしまう。すると「<<0000年00月」となりバランスが悪い。形だけでもバランスを整えるために「<<0000年00月>>」と表示されるこの様にした。あとは…、リンク元は曜日表示が英語表記になっているのを、既に設置してある日本語表記に合わせたくらいかな?

これで前月アーカイブリンクができました。

まだまだ続きますよ。

Movable Type メインページにカレンダーを表示

サーバ移転をした際にMovable Typeのバージョンを上げて新規インストールすると、デフォルトテンプレートには今まであったカレンダーが消えていました。今日は前バージョンまでのカレンダーを復活させました。

前サーバにまだ前バージョンであるMovable Type 3.15が残っているので、管理ページから「テンプレート」ページ飛び、「インデックス・テンプレート」の「メインページ」のリンクから編集ページに飛びます。「テンプレートの中身」からカレンダータグの部分をちょちょいっと抜き出します。

<div id="calendar">

<table summary="投稿されたエントリーへのリンク付き月間カレンダー">
<caption><$MTDate format="%B %Y"$></caption>
<tr>
<th abbr="日曜日">日</th>
<th abbr="月曜日">月</th>
<th abbr="火曜日">火</th>
<th abbr="水曜日">水</th>
<th abbr="木曜日">木</th>
<th abbr="金曜日">金</th>
<th abbr="土曜日">土</th>
</tr>

<MTCalendar>
<MTCalendarWeekHeader><tr></MTCalendarWeekHeader>

<td><MTCalendarIfEntries><MTEntries lastn="1"><a href="<$MTEntryPermalink$>"><$MTCalendarDay$></a></MTEntries></MTCalendarIfEntries><MTCalendarIfNoEntries><$MTCalendarDay$></MTCalendarIfNoEntries><MTCalendarIfBlank> </MTCalendarIfBlank></td><MTCalendarWeekFooter></tr></MTCalendarWeekFooter>
</MTCalendar>

</table>
</div>

そして前のページに戻り、今度は「スタイルシート」のリンクから編集ページに飛びます。これも「テンプレートの中身」からカレンダーのスタイルを設定している部分をちょちょいっと抜き出します。

#calendar {
 line-height: 140%;
 color: #666666;
 font-family: Verdana, Arial, sans-serif;
 font-size: x-small;
 
 padding: 2px;
 text-align: center;
 margin-bottom: 30px;
 }

#calendar table {
 padding: 2px;
 border-collapse: collapse;
 border: 0px;
 width: 100%;
 }

#calendar caption {
 color: #666666;
 font-family: Verdana, Arial, sans-serif;
 font-size: x-small;
 
 text-align: center;
 font-weight: bold;
 
 text-transform: uppercase;
 
 letter-spacing: .3em;
 }

#calendar th {
 text-align: center;
 font-weight: normal;
 }

#calendar td {
 text-align: center;
 }

この抜き出した分を新しいテンプレートに埋め込みます。

埋め込む場所は以前と同じ場所のサイト内検索の上がいいと思うので、検索タグが埋め込まれているところを探します。

<div id="beta">
<div id="beta-inner" class="pkg">

<div class="module-search module">
<h2 class="module-header">検索</h2>
<div class="module-content">
<form method="get" action="<$MTCGIPath$><$MTSearchScript$>">
<input type="hidden" name="IncludeBlogs" value="<$MTBlogID$>" />
<label for="search" accesskey="4">ブログを検索: </label><br />
<input id="search" name="search" size="20" />
<input type="submit" value="検索" />
</form>
</div>
</div>

<div id="beta">からサイドバーが始まり、すぐに検索タグが来ているようです。この間に入れましょう。

<div id="beta">
<div id="beta-inner" class="pkg">

<h2 class="module-header">カレンダー</h2>
<div class="module-content">
<div id="calendar">
<table summary="投稿されたエントリーへのリンク付き月間カレンダー">
<caption><$MTDate format="%B %Y"$></caption>
<tr>
<th abbr="日曜日">日</th>
<th abbr="月曜日">月</th>
<th abbr="火曜日">火</th>
<th abbr="水曜日">水</th>
<th abbr="木曜日">木</th>
<th abbr="金曜日">金</th>
<th abbr="土曜日">土</th>
</tr>
<MTCalendar>
<MTCalendarWeekHeader><tr></MTCalendarWeekHeader>
<td><MTCalendarIfEntries><MTEntries lastn="1"><a href="<$MTEntryPermalink$>"><$MTCalendarDay$></a></MTEntries></MTCalendarIfEntries><MTCalendarIfNoEntries><$MTCalendarDay$></MTCalendarIfNoEntries><MTCalendarIfBlank> </MTCalendarIfBlank></td><MTCalendarWeekFooter></tr></MTCalendarWeekFooter>
</MTCalendar>
</table>
</div> 

<div class="module-search module">
<h2 class="module-header">検索</h2>
<div class="module-content">
<form method="get" action="<$MTCGIPath$><$MTSearchScript$>">
<input type="hidden" name="IncludeBlogs" value="<$MTBlogID$>" />
<label for="search" accesskey="4">ブログを検索: </label><br />
<input id="search" name="search" size="20" />
<input type="submit" value="検索" />
</form>
</div>
</div>

デフォルトのスタイルシートによる デザインの関係もあるので、

<div id="calendar">

の上に 

<h2 class="module-header">カレンダー</h2>
<div class="module-content">

を付け足しました。

スタイルシートは「テンプレートの中身」に

/* modules */

というコメントがあったのでその上辺りに挿入します。

しかし、以前からカレンダーのデザインを少し変えたいと思っていたので、この機会にスタイルシートをちょこっと弄りました。

#calendar th {
 text-align: center;
 font-weight: normal;
 border: 1px solid #999999;
}

#calendar td {
 text-align: center;
 border: 1px solid #999999;
}

これだけでカレンダーのテーブルに1pxでグレーの枠線が付きます。

以上を入力したら、保存し、再構築を行います。これで前バージョンと同じようにカレンダーが表示されるはずです。

しかし、これは以前と同じようにカレンダーを表示しただけなので、ここから少し機能を拡張していきたいと思います。次のエントリーに続く…。

続きにはちょっと気になった事と、本音を書いておきます。

Continue reading

MovableType エントリーフォーマットの変更

  • Posted by: 南野 せな
  • 2005年12月31日 20:58
  • Movable Type

MovableType ver3.2からエントリーフォーマットのカスタマイズ性が高くなり、自分の分かり易い形式でフォーマットを決める事ができるようになりました。

初期設定や初期設定の選択肢ではちょっと難有りで、動作には問題ないけど、日本語化環境では特有の癖もありました。初期設定や初期設定の選択肢ではエントリー名がそのままファイル名となり、以下のような規則性がありました。

  • 日本語のみのタイトルの場合ファイル名
    「past_"カウント数字".html」
  • 英数字を含むタイトルの場合のファイル名
    「日本語を除いた英数字.html」
    # ただし、半角スペースはアンダーバー(_)に置き換えられる
  • つまり、「日本語 English」というタイトルの場合
    「_english.html」となり、最初にアンダーバーが入るのでWebサーバの仕様上、あまりよろしくない。
  • ファイル名が重複する場合
    「"ファイル名"_"重複するファイル数のカウント".html」という風に「重複するファイル数」が勝手に付加される。
  • そもそもタイトル名をそのままファイル名にするのは綺麗ではない

とまぁ、以前からこの仕様をあまり好んでなかったので、どうにかしたいと思い色々と弄ってみました。

初期設定ではアーカイブパス以下が

yyyy/mm/entry_basename.html

だったと思うので、

4桁の年/2桁の月/タイトルを元にしたファイル名.html

で保存されていたのを、選択肢にある

yyyy/mm/dd/entry_basename.html

4桁の年/2桁の月/2桁の日/タイトルを元にしたファイル名.html

に変更しました。これでもまだファイル名が好みではないので、選択肢の「カスタマイズ」で

4桁の年/2桁の月/2桁の日/24時制の2桁の時2桁の分.html

に変更しようとしました。一日のエントリーで時間が重複するような事はまずないでしょうからその点では余計なファイル名が付加されないし、4桁で揃うので、見た目が綺麗になります。

カスタマイズを選択し最初に表示されたのは以下でした。

%y/%m/%d/%f

これは日付タグのフォーマットを示しているのだと思い、オンラインマニュアルのMovable Type ユーザマニュアル: テンプレート・タグ「日付タグのフォーマット」を参考に「%f」を削除し、削除した所に「%H%M.html」を挿入し「%y/%m/%d/%H%M.html」として再構築しました。

ところがうまくいかず、何が悪いのか分からなかったのでWeb検索してみました。

すると、サイトItsMemo ITさんのMovable Type: アーカイブ・マッピングの変更方法というのが出てきました。これによるとエントリーアーカイブ出力フォーマットは独自の形式があり、その形式で記入しなければならないようでした。どうやらこれについては公式サイトのSixApart本家でしか載ってないようです。つまり英語(汗)。

で、最終的な結果がこのようになりました。

%y/%m/%d/%h%n%x

これで「4桁の年/2桁の月/2桁の日/24時制の2桁の時2桁の分.html」となりました。エントリーフォーマットでは分の日付フォーマットが「%n」となり、最後の「%x」というのは設定されている拡張子にあたります。これで再構築すると上手くいきました。

他参考ページ

ついでにカテゴリーアーカイブも変更しました。初期値では

category/sub-category/index.html

となっていました。このままではアーカイブパス以下がトップカテゴリのフォルダで埋まります。そこでアーカイブパス以下に「category」ディレクトリを作ってから、その中にトップカテゴリ以下を作る設定にします。

初期値から選択肢「カスタマイズ」を選択すると以下の様に出てきました。

%-c/%i

それを以下の様に変更して再構築するだけ。

category/%-c/%i

これだけでできました。あとは勝手にディレクトリをカテゴリレベル毎に展開してくれます。

弊害

以前の仕様のファイルが残ってしまった(泣)。

再構築でファイル名を変更するのではなくて、新たにファイルを生成したのね…。

仕方ないので、FTPクライアントから一つ一つ以前のタイプのファイルを削除しました。エントリー数=ファイル数なので、数にして250余ファイル…。

本当なら、アーカイブパス以下のディレクトリとファイルを全部削除して再構築しても、何も問題がないとは思うのですが…。元データはデータベースに保存されている訳なんだし…。再構築ってそっちからデータを持ってきてファイルを生成しているだけだと思うし。

MovableType カスタマイズメモ

以前のMTでメモするのを忘れて、どこを書き足したか、カスタマイズしたかを忘れてしまったので…(汗)。

  • テンプレートのバックアップ
    1. カスタマイズする前のデフォルトの状態でテンプレートカスタマイズページにて「このテンプレートにリンクするファイル」に「template/index/default.tmpl」を記述。一度「保存と再構築」をする。
    2. カスタマイズしたら「このテンプレートにリンクするファイル」の記述を「template/index/(日付_カスタマイズの回数).tmpl」に毎回変更し「保存と再構築」を行う。
    3. バックアップした時の状態に戻すには、「このテンプレートにリンクするファイル」で戻したい状態のファイル名を記述し、「テンプレートの内容」を全部消してしまい、「保存」を実行。
    4. すると下の状態に戻る。と。

 

  • インデックスページのエントリーにカテゴリを表示する
    • インデックスページ、エントリーのトラックバック「<MTIfPingsActive>」の閉じタグの後に
       | カテゴリ : <MTEntryCategories glue=" / ">
      <a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a>
      </MTEntryCategories> 
      を入れる。
    • カテゴリが複数ある時は「glue=" / "」のダブルクオーテーション内が区切り文字となる。

サーバ移転

サーバ移転したのに、何故今までと同じURIでアクセスできるか不思議に思うかもしれません。移転というイメージで強いのはいきなりインデックスページが変わり、移転の案内と移転先のリンクだと思います。今回、移転したサーバは前のサーバ以上にサブドメインの設定が安易なので、設定さえしてしまえば後はDNSの浸透を待つだけでした。

このサーバ移転を機にMovableTypeのアップデートとサブドメインを追加し、「http://blog.sena.to/」でもアクセスできるようにしました。

まぁ、設置するにあたり、色々とトラブルはあった訳で...。中でも一番困ったのが、サブドメインのDNSは反映されているのを確認してMovableTypeの設置を行ったのですが、設定をしているうちにDNSエラーを返してきて、しかもDNSエラーが続いたままという...。しかも2回連続で。何とも不可解な事でした。

再現性もあるし、MovableTypeはサーバのシステムにまで影響を及ぼしかねないスクリプトを持っているので、原因はサーバとMovableTypeの何かによって起こるのは分かっているんですけどね...。私は管理者ではないからそれ以上の原因の究明はできません。とにかく、サーバの管理会社にメールを出したら、いつの間にか解決してました。メールを見て、返信はさておき、対処だけ先にしたんでしょうね。

MovableTypeは結構前にVer3.2が出ていたのでしたが、以前のサーバではVer3.15のまま放置していました。今回は新規インストールして、以前のサーバでも非推奨だったけど使っていたMySQLを今回も使う設定にしました。設定に関してはメモとして後日書くつもりです。Ver3.2のデフォルトテンプレートも以前のVer3.0~3.15までのテンプレートに比べるとデザインがいいので、暫くはそのままで行こうかと思います。でも、少し弄る必要はあるな(苦笑)。

Movable Type 3.14 リリース

スパム受信時の負荷軽減を実現――2005年1月にMT 3.14日本語版

今回のバージョンアップでは、大量のスパムを受信した際のサーバー負荷を軽減処理したそうで...。これ入れてまだ2週間なんですけど、もうバージョンアップですか?日本語版は年明けの予定みたいですけど。

後、ニュースに取り上げるのが遅いッスよ。もう24日には発表されていたんですから。

Movable Type 入力支援Plug-in

昔、はてなDiaryを使っていた時、リスト表示させる時、タグを使わずに行頭に「-」を入れるだけで、自動的にリスト表示されていました。

また、PukiWikiでも、テーブル表示させる時にタグを使わず、簡単に入力できていた事から、同じような入力支援プログラムがないか探してみたところ、ピッタリの物を見つけました。

サイト「ささやかなる実験場の開発室(HSJ.jp)」様のMovableType用TextFormatプラグイン mt-sukeroku-plus.plです。

これ一つではてなDiary、PukiWiki、YukiWikiの入力支援方式に対応しています。また、エントリー毎に入力支援方式を選択できますので、必要ない時はデフォルトの「改行を変換する」方式で入力する事も可能です。

かなり便利です。

Index of all entries

Home > Movable Type Archive

Search
Feeds

Return to page top