印刷用表示へ切り替え 通常表示へ切り替え 更新履歴を表示 更新履歴を隠す
MovableType カテゴリ表示のアイコンをつけるには

タイトルにカテゴリ表示の画像Linuxをつける。

■ ■ ■

カテゴリを作成する。カテゴリ名として気をつける点は以下の2点。

  • 半角英数字にする
  • スペースを入れない

画像ファイルを用意する。

  • GIF, PNG など形式は何でもよいが、同じ形式にする
  • ファイル名はカテゴリ名と同じにする
  • 拡張子の大文字小文字を統一する
例えば、MovableType.gif, Linux.gif などである。GIF のライセンスが気になる場合は PNG 形式がお勧め。

画像ファイルをアップロードする。

  • Main Index が置かれるディレクトリに mticons などの名前でディレクトリを作る
  • 作ったディレクトリに画像ファイルをアップロードする
ディレクトリ名は「icons」や「images」など好きなものでよいが、注意が必要な場合もある。Web サーバが Apache の場合、デフォルトでは「icons」というディレクトリ名は Apache の画像ディレクトリとしてあらかじめ割り当てられており、別のディレクトリを参照するようになっている。画像ファイルが表示されない場合は、ディレクトリを直接参照してみるとよい。

カテゴリ名は <$MTCategoryLabel$> として参照できる。<$MTCategoryLabel$> タグは <MTEntryCategories> と </MTEntryCategories> で挟むことがポイントである。自分で用意した画像の大きさを width, height 指定し、alt 属性も指定した方がよい。

<MTEntryCategories>
<img src="<$MTBlogURL$>mticons/<$MTCategoryLabel$>.gif"
border="0" width="80" height="15" alt="<$MTCategoryLabel$>" />
</MTEntryCategories>

このウェブログで使っているコードは次の通り。align="right" で右寄せをしている。画像の指定の後にタイトルをしているところがポイント。タイトルの後に align="right" で画像を指定すると、画像がタイトルより一行下に表示されてしまうのである。

<div class="title">
<MTEntryCategories>
<a href="<$MTCategoryArchiveLink$>">
<img src="<$MTBlogURL$>mticons/<$MTCategoryLabel$>.gif"
border="0" width="80" height="15" alt="<$MTCategoryLabel$>"
align="right" /></a>
</MTEntryCategories>
<$MTEntryTitle$>
</div>
<a>...</a> の間には改行を入れないのが正しい。

以前、タイトル部分に表を作って、左側をタイトル、右側を画像にして、幅を width="100%" と指定する方法を試してみたが、ブラウザによって表示が違ってしまった。Mozilla 1, Netscape 7 では予想通りの表示となったが、IE 6 では表が右側にはみ出てしまった。

Main Index のビルドに失敗する場合は、カテゴリページが作られているかをチェックする。カテゴリページがない場合、Main Index に書いたコードが正しくてもビルドに失敗してしまう。カテゴリページを作るには、メインメニュー→BLOGの設定→アーカイブの設定で、Category にチェックを入れてビルドすればよい。

ボタンを作るオンラインスクリプトは(アクセス集中のためか、よくダウンしている)

これを簡単に使うためのインターフェイスは

で公開されている。

カテゴリに日本語を表示したい場合は <$MTCategoryDescription$> タグを使う (カテゴリ別投稿数を表示するには)。

2005年1月9日追記:
img 要素の中では、border 属性と align 属性は推奨されていません。上の2つのコードの該当する部分は style 属性で記述した方がよいようです。

<MTEntryCategories>
<img src="<$MTBlogURL$>mticons/<$MTCategoryLabel$>.gif"
style="border: none;" width="80" height="15" alt="<$MTCategoryLabel$>" />
</MTEntryCategories>

align="right" は style="float: right;" と書き直すことで同様の効果が得られ、書式的にも正しくなります。

<div class="title">
<MTEntryCategories>
<a href="<$MTCategoryArchiveLink$>">
<img src="<$MTBlogURL$>mticons/<$MTCategoryLabel$>.gif"
style="border: none; float: right;" width="80" height="15" alt="<$MTCategoryLabel$>" /></a>
</MTEntryCategories>
<$MTEntryTitle$>
</div>

2005年4月22日追記:
さらに,style="..." というインラインスタイルは削除し,これをスタイルシートに記述する方が,構造的に正しくなります(nlog(n): 画像のインラインスタイルをスタイルシートへ移す)。

<div class="title">
<MTEntryCategories>
<a href="<$MTCategoryArchiveLink$>">
<img src="<$MTBlogURL$>mticons/<$MTCategoryLabel$>.gif"
alt="<$MTCategoryLabel$>" /></a>
</MTEntryCategories>
<$MTEntryTitle$>
</div>

スタイルシートには次を追加しておきます。

.title img { border: none; float: right; width: 80px; height: 15px; }
Posted by n at 2004-02-10 15:27 | Edit | Comments (2) | Trackback(3)
Trackbacks

  • 「手違いで複数トラックバックを送ってしまった!」という場合でも気にしないでください (重複分はこちらで勝手に削除させていただきます)
  • タイムアウトエラーは,こちらのサーバの処理能力不足が原因です (詳細は トラックバック送信時のエラー をご覧ください)
  • トラックバックする記事には,この記事へのリンクを含めてください(詳細は 迷惑トラックバック対策 をご覧ください)
category作成
category Google 検索: Categoryリストの作り方 仕事と家事の狭間に: 2004年05月 Archives Google 検索: カテゴリリストの作り方 Yukke-BB'n-BA: ゲームニュース アーカイブ Nucleusでニュースサイト?!っぽく - しし丸先生の教え Google 検索: blog テンプレート ブログ... Trackbacked from: YEAH at July 29, 2004 01:46
お勉強中
blogを始めて早4ヶ月 cssもほんのちょびっとだけわかってきたような まだ全然わかってないようなw とりあえず今までBlogを作る上で 大変参考になったサイトを紹介したいと思います^^ ■カテゴリーを作る 1.まずはBLOGの設定で上の基本設定のアーカイブの設定の  Categ... Trackbacked from: swain blogs at October 02, 2004 01:44
タイトルにカテゴリー別アイコンを表示
エントリーのタイトルにカテゴリー別のアイコンを貼り付ける方法です。 自己満足カス... Trackbacked from: caramel*vanilla at December 06, 2004 22:21
Comments

この方法を使わせていただいております。
過去のエントリにコメントつけて申し訳ないのですが、
こちらのブログのように、カテゴリアーカイブの左側に
メニューがありますが、その一番上の「Category Archives」 の
すぐ下のアイコンのように、カテゴリアーカイブでアイコンを
カテゴリ名代わりに表示させるにはどうしたらよいのでしょうか。

ほかのアーカイブだったら大丈夫なのですが
こちらで紹介されているタグの記述をカテゴリアーカイブに使うと、リビルドに失敗してしまいます。

お時間があれば教えていただけませんか?

Posted by: pocco at May 16, 2004 01:39

そういえば、これには悩んだ記憶があります。
http://nlogn.ath.cx/archives/000164.html
に詳細を書きました。

Posted by: n at May 16, 2004 16:37
Post a comment
  • 電子メールアドレスは必須ですが,表示されません (気になる場合は「メールアドレスのような」文字列でもOKです)
  • URL を入力した場合はリンクが張られます
  • コメント欄内ではタグは使えません
  • コメント欄内に URL を記入した場合は自動的にリンクに変換されます
  • コメント欄内の改行はそのまま改行となります
  • 「Confirmation Code」に表示されている数字を入力してください (迷惑コメント対策です)


(必須, 表示されます)


(必須, 表示されません)


(任意, リンクされます)


Confirmation Code (必須)


Remember info (R)?