Talk about Movable Type
2006年3月 7日 | Category: Internet
無料レンタルサーバを借りていた時はブログもレンタルだったのですが、今のサーバを借りてからは Movable type でブログやってます。 なんて言うかレンタルだと記録が直接手元に残らないし、自由にカスタマイズできないし。他にもいろいろサーバ設置型のブログツールはありますが、これが一番ユーザーが多いしサポートも充実してるかなというので使ってます。ホントはPHPのほうがいいんだけど。Word Press とか惹かれます。
で、最新のバージョン3.2を導入。翻訳版はバグが多いし、いち早くアップグレードできるのはやっぱり英語版なのでUS版をダウンロード。やはりインストールはいろいろ苦労しました。もっと簡単にならないのだろうか。インストールしてみて驚いたのは普通のブログにあるはずの項目が無い(ページ送りとか最新のコメトとか)!CSSやテンプレートのソースがめっちゃ分かりにくくて煩雑(3.2かららしい)!で、いろいろ変更したわけです。
- テンプレートのソースを作り直し。それに応じてCSSも書き直し(これが一番大変!)。今もちょくちょくやってます。デフォルトは無駄な構造が多すぎだと思う。
- 最新のコメントを追加。
- PHP化して共通部分を分割、includeを使う
- BigPAPI (これを使うわけじゃないけど、これを使ったプラグインが多い)
- MT-PhotoGallery (ブログにアップロードした写真を表示できる)
- 上記プラグイン導入に伴って photo gallery 用テンプレートを作って追加。
- MTPaginate (これは便利!エントリーを分割できる)
- ArchiveYear (と、それに関連するプラグイン。サイドバーにある月別アーカイブは長くなりすぎるので)
- Better File Uploader (イマイチだけど入れてないよりマシ。ファイルのアップロードが少しは楽になる)
MTPhotoGallery のテンプレートはソースは以下のようにしました。
<MTPhotoGallery extension="jpg">
<a href="<MTPhotoGalleryImageLink>"><img src="<MTPhotoGalleryImageLink>" alt="<MTPhotoGalleryImageTitle>"
width="xxx" height="xxx" /></a>
<br clear="all" /><MTPhotoGalleryImageTitle><br />[<a href="<$MTCGIPath$><$MTSearchScript$>?search=<MTPhotoGalleryImageFileName>">関連記事</a>]</div>
</MTPhotoGallery>
table は使用していないのでレイアウトが崩れないように画像の幅を指定してあります。movable 既存の gif画像を除くために jpg のみを拾うようにして、さらにCSSで img に float: left; を使って横に並ぶようにしてあります。僕はサムネイルを作成していないし、これだけだと画像が増えたときに重くなるので MTPaginate 分割しました。画像を年別フォルダに保存すれば年毎のギャラリーも作成できると思いますが、その場合いちいちテンプレートを作成しなくてはいけません(多分)。 <MTPhotoGallery path="<$MTArchiveDate format="%Y"$>"> とか出来ればテンプレートを1個作るだけで済むのに出来ません(出来るなら誰か教えて欲しい・・・)。
年別アーカイブテンプレート構造は以下のようにしました。
<dl>
<MTArchiveYear>
<MTArchiveYearIfEntries>
<MTArchiveLoad>
<MTDateHeader>
<a href="<$MTBlogArchiveURL$><$MTArchiveDate format="%Y/%m"$>/"><$MTArchiveTitle$></a>: <$MTArchiveCount$> posts</dt><dd>
<ul>
<MTEntries>
<li><$MTArchiveDate format="%m.%d"$> — <a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a></li></MTEntries>
</ul>
</dd>
</MTDateHeader>
</MTArchiveLoad>
</MTArchiveYearIfEntries>
</MTArchiveYear>
</dl>
Better File Uploader は、僕は画像はサムネイルを生成せずに画像を img タグで縮小して、リンクを貼っているので(click to enlarge)、ちょっと改造しました。いちいちリンクを貼らなくていいように、 BetterFileUploader.pm 中の return $app->translate_templatized($html); を変更。
else {
return "<img alt=\"$fname\" src=\"$url\" width=\"$width\" height=\"$height\" />";}
を上の行にある if ($thumb) のように変更して、
else {
return "<a href=\"$url\"><img alt=\"$fname\" src=\"$url\" width=\"$width\" height=\"$height\" /></a>";}
これで、 <a href="画像URL"> が貼られた状態でコピーできるようになります。
あと、blockquote タグの構造が崩れる問題で悩まされたのですが、散々悩んで、ふと気づきました。いちいちUtil.pm を変更したりせずに、しかもText Formatting は Convert Line Breaks のまま。テキストエリア入力時に以下のようにする。
文章
<blockquote>
文章
</blockquote>
文章
blockquote タグの前後に2度の改行。これで p タグが入って正しいHTMLの記述になります。ていうかこれは3.2より前のみの問題なのだろうか?こんなの当たり前?
その他、気づいたらここに追加していきます。
