お知らせ

Excelでできるらくらく統計解析2010年4月7日

Excelでできるらくらく統計解析」が発売されました。
Excelを使って、ヒストグラム作成から推定・検定・多変量解析といった統計行う方法を解説しています。
多数の式を入力する必要がある処理は、「統計アドイン」で簡単に行えるようになっています。

他にも多数書籍を執筆しています。
こちらもぜひご覧ください。

主/副カテゴリーを区別して出力する

| コメント(2) | トラックバック(8)

Movable Typeでは、1つのエントリーを複数のカテゴリーに割り当てることができます。
また、そのうち1つを主カテゴリーにし、残りは副カテゴリーにすることもできます(主カテゴリーをなしにして、全部を副カテゴリーにすることもできます)。

しかし、Movable Typeの標準のテンプレートタグでは、主カテゴリーと副カテゴリーを区別して出力するものがありません。
MTEntryCategoryタグを使うと、主カテゴリーの名前(ラベル)を出力することができますが、その他の情報は出力できません。
また、MTEntryCategoriesタグを使うと、エントリーの全カテゴリーが文字コード順に出力され、主/副を区別することができません。

そこで、主カテゴリーと副カテゴリーを区別して出力するようなプラグインを作ってみました。

インストール

以下のページに接続して、表示されたソースコードをすべてコピーし、メモ帳等に貼り付けます。
そして、ソースコードに「EntryCategoriesModified.pl」というファイル名をつけて保存し、Movable Typeの「plugins」フォルダにアップロードします。

プラグインのソース

プラグインの継続的な開発やサポートのために、プラグインをご利用された方は、ドネーション(寄付)を行っていただけると幸いです。
ドネーションの方法は、こちらのページをご参照ください。

また、このプラグインの他にも、いくつかのプラグインを配布しています。
配布中のプラグインは、Movable Type Plugin Directoryのページをご参照ください。

Movable Typeのプラグイン開発等のドキュメント「Movable Type Developer's Guide Volume 1」も販売しています。
ご自分でプラグインを作ってみたい方に、ぜひお勧めしたい一冊です。
詳細は特設ページをご覧ください。

MTEntryCategoriesModifiedタグ

MTEntryCategoriesModifiedタグはMTEntryCategoriesタグを改良したものです。
コンテナタグになっていて、コンテナの中ではMTCategoryXXXタグを使うことができます。
「mode="xxx"」のアトリビュートを指定することで、以下の表のように、エントリーに割り当てたカテゴリーを出力することができます。

アトリビュート動作
mode="primary"主カテゴリーだけを出力します
mode="secondary"副カテゴリーだけを出力します
mode="all"まず主カテゴリーを出力し、その後に副カテゴリーを出力します

また、MTEntryCategoriesタグと同じく、「glue="○"」のアトリビュートで、カテゴリー間を区切る文字を指定することもできます。

MTEntryCategoryCountタグ

エントリーに割り当てたカテゴリーの数(主/副の合計)を出力する変数タグです。
また、「secondary="1"」のアトリビュートをつけると、副カテゴリーの数だけを出力することもできます。

MTEntryIfPrimaryCategoryタグ

エントリーに主カテゴリーがあるかどうかを判断する条件タグです。

MTEntryIfSecondaryCategoryタグ

エントリーに副カテゴリーがあるかどうかを判断する条件タグです。

使用例

以下のリストは、エントリーのカテゴリーを主カテゴリーと副カテゴリーに分けて出力する例です。
カテゴリーの名前を出力し、その部分をカテゴリーアーカイブページへのリンクにします。
また、副カテゴリーが複数ある場合は、それらの間をコンマで区切ります。

<p>
<MTEntryIfPrimaryCategory>主カテゴリー:<MTEntryCategoriesModified mode="primary"><a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a></MTEntryCategoriesModified><br /></MTEntryIfPrimaryCategory>
<MTEntryIfSecondaryCategory>副カテゴリー(<$MTEntryCategoryCount secondary="1"$>):<MTEntryCategoriesModified mode="secondary" glue=" , "><a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a></MTEntryCategoriesModified></MTEntryIfSecondaryCategory>
</p>

トラックバック(8)

トラックバックURL: http://www.h-fj.com/mt/mt-tb.cgi/313.

MTEntryCategoriesModifiedプラグイン。  リンク先にて... 続きを読む

前のエントリーから1ヵ月以上経っていますが、またまた中身は超進化していますので。... 続きを読む

カテゴリ・アーカイブ内ではあまりひねらずとも、次のように記述すれば、そのカテゴリ... 続きを読む

MovableTypeは1つの記事に対し、複数のカテゴリーが設定できます。 自分... 続きを読む

複数のカテゴリーに属しているエントリーページに、主カテゴリーの説明文(とリンク)... 続きを読む

以前、カテゴリーアーカイブのディレクトリ名をうまく設定できないと書いたが、これ... 続きを読む

エントリー数も少しづつ増えてきたので、パンくずリストを設置しました。 ひとつの... 続きを読む

遅ればせながらMT3.3をインストールしてみました。 結構前にリリースされたのは... 続きを読む

コメント(スレッド2件,コメント2件)

コメントはスレッド表示になっています。
また、スレッドの先頭のコメントに対する返信には、先頭に矢印を表示しています。

No.1 忍月 : (無題)

はじめまして
求めていた機能が見つかったと思い、さっそくチャレンジしたのですが、再構築時に以下のようなエラーが出てしまいます。


Can't call method "category" on an undefined value
at(パス)/mt/plugins/EntryCategoriesModified.pl line 91.

再構築しようとしているタグはこちらの使用例をそのままでテストしました。
使用しているMovable Typeは3.2-ja-2です。
原因には何が考えられるか、アドバイスいただけないでしょうか?
よろしくお願いいたします。

No.2  : (無題)

>忍月さん
こんにちは。

このプラグインのテンプレートタグは、<MTEntries>~</MTEntries>の間か、エントリーアーカイブテンプレートの中でないと、使うことができません。
それ以外の位置に入れると、コメントいただいたようなエラーメッセージが表示されます。

テンプレートの中で、タグを入れた位置をご確認ください。

コメントする