2007年8月28日
Movable Type 4用のカテゴリー/フォルダの並べ替えプラグインを公開しました。
画面上でカテゴリー/フォルダを並べ替えることができ、使い勝手が大幅に上がっていますので、MT4の方はそちらのプラグインをお使いください。
2006年11月30日
MTSubCategoriesタグ専用のカテゴリー並べ替えプラグインを公開しました。
このプラグインとは作業手順も異なりますので、作業手順やメリット/デメリットを比較の上、ご自分にあったものをお使いください。
2006年4月23日
このプラグインの改良版を公開しました。
ただし、カテゴリー名のつけ方が異なり、作業手順も異なりますので、両プラグインを比較の上、ご自分にあったものをお使いください。
Movable Typeでは記事をカテゴリーに分類することができますが、カテゴリー一覧を表示すると、文字コード順に並んでしまい、そのままでは任意の順番に並べることができません。
Webで検索してみると、「カテゴリー名の先頭に番号をつけておいて、カテゴリー名(MTCategoryLabelなど)の代わりに、カテゴリーの説明(MTCategoryDescription)を表示する」という手法が紹介されています。
ただ、この方法だと、「カテゴリーの説明を本来の用途に使えなくなってしまう」という問題があります。
そこで、「カテゴリー名の先頭に番号をつけて、それを表示する際に番号をカットする」という手法を考えてみました。
これは簡単なプラグインで作ることができました。以下のリンクをクリックすると、プラグインをダウンロードすることができます。
cutfirstchar.pl
プラグインの継続的な開発やサポートのために、プラグインをご利用された方は、ドネーション(寄付)を行っていただけると幸いです。
ドネーションの方法は、こちらのページをご参照ください。
また、このプラグインの他にも、いくつかのプラグインを配布しています。
配布中のプラグインは、Movable Type Plugin Directoryのページをご参照ください。
Movable Typeのプラグイン開発等のドキュメント「Movable Type Developer's Guide Volume 1」も販売しています。
ご自分でプラグインを作ってみたい方に、ぜひお勧めしたい一冊です。
詳細は特設ページをご覧ください。
ダウンロードしたファイルを、Movable Typeのディレクトリの中の「plugins」ディレクトリにアップロードします。これで、プラグインがインストールされます。
この後、カテゴリー名を表示するタグに、「cutfirstchar="n"」の属性を指定します。nは、カテゴリー名の先頭からカットする文字数です。
例えば、カテゴリー名を「001カテゴリーA」のようにして、先頭3文字を番号にした場合だと、<$MTCategoryLabel$>等のカテゴリー名表示タグを、<$MTCategoryLabel cutfirstchar="3"$>等に書き換えます。
Makoto
便利なプラグインであり、大変ありがたく使わせていただいております。
一つ質問なのですが、当方の環境ではhtml出力した場合は正常に頭のn文字が表示されなくなるのですが、
php出力した場合は何故かそのまま表示されてしまいます。
> http://clan-et.myftp.org/indx.html
> http://clan-et.myftp.org/index.php
他の同様のプラグインを利用しているサイトを見てみるとphpでも問題なく動作しているようなので、
当方の環境の製だとは思いますが、皆目見当がつきません。
何かアドバイス等があればご教示願いたいと思います。
壱
当方のプラグインをご利用いただき、ありがとうございます。
ご質問の件ですが、PHPのページは、通常の再構築で出力しているでしょうか。それとも、ダイナミックパブリッシングを使って出力しているでしょうか。
ダイナミックパブリッシングだと、Perlのプラグインは使えませんので、そのような動作になります。
ダイナミックパブリッシングでないとすると、原因は思いつきません。
Makoto
ダイナミックページに設定しておりました。
ご回答有り難うございます。
さえら
こんにちは。今朝ほどは あれこれ教えていただいて助かりました。
ありがとうございました。
RSSのcutfirstcharの修正、ホントすっかりモレてました。
あと、文字に色をつけようとしてエラーになったのは、ご推測のとおり
「"」~「"」の間にさらに「"」を入れようとしたためでした。
「"」~「"」の間の「"」に、前に「\」をつけることで
エラーにならず、しっかり文字に色を付けることができました。
適切なアドバイス、ホントにどうもありがとうございました。
halu
初めまして。カテゴリーの順番を変えるプラグインを使わせて頂きました。事後報告で申し訳ありません。おかげで思い通りのblogにすることができました。ありがとう御座います。
tomo
はじめまして!
こちらのプラグイン利用させていただきました。
便利なものを本当にありがとうございました。
yellowjamaican
バッチリ上手く行きました。
cutfirstchar="n"を追加する場所が判らず悩みましたが、なんとか出来ました。
ありがとうございます。
m.sayama
はじめまして、当サイトで貴サイトを紹介させてもらいました。
TBしたかったのですが、新規エントリーが最後まで保存再構築できず、コメントさせていただきました。
紹介内容に失礼がありましたら、コメントいただけると幸いです。
今後ともお世話になると思います。
よろしくお願い申し上げます。
ぽむ
はじめまして。
こちらのプラグインを使わせていただきました。
おかげさまで、カテゴリがスッキリしました。
ありがとうございました。
BlogPeopleのリストにも登録させていただきました。
事後報告で申し訳ありません。不都合がありましたらご連絡ください。
よろしくお願いします。
hase
有用なプラグインを無料で利用させて頂き、またサイトにコメントまで頂戴し恐縮です。情報量が多いサイトなので、全てに目を通していませんが、また色々とお世話になるかと思います。この度は、ありがとう御座いました!!!
さっちん
こちらのプラグインを使わせていただきました。
とっても簡単に導入でき、思い通りにカテゴリーを並べることができました。
どうもありがとうございました。
kei
初めまして、webデザイナーです。
現在、MTで構築したサイトをつくっているのですが、このプラグインを当方の顧客のサイトに利用しても問題ないでしょうか?
よろしくお願いいたします。
壱
>keiさん
こんにちは。
利用していただいてかまいませんが、サイトのどこかに出典を明記していただければと思います。
Flan
はじめまして。
こちらのプラグインを使わせていただきました♪
とても簡単に導入でき、お陰さまで思うように並び替えることができました。
ありがとうございます。
壱
>Flanさん
プラグインをご利用いただき、ありがとうございました。
また、メロ友も申請していただき、ありがとうございました。
adseed
はじめまして。
cutfirstchar.plを使わせていただきました。
とっても便利なプラグインありがとうございます。
私もプラグインが作成できるようになりたいので「ブログ自由自在 Movable Type 上級カスタマイズ術」を読みながら勉強中です。
たびたびおじゃましますので今後ともよろしくお願いします。
38brain
色々と探してこちらのサイトにたどり着きました。
早速pluginを使わせていただき思い通りにカスタマイズすることができました。
非常にわかりやすく、また有意義なツールで大変助かりました。
ありがとうございました。
yasu
はじめまして。
Movable Type上級カスタマイズ術で、MTに興味を持ち、
cutfirstcharも重宝させて頂いています。
先日、MT3.2にアップグレードを試みましたが、
cutfirstcharプラグインは3.2には対応していないのでしょうか?
3.15では問題なく動作していたのですが、
<$MTCategoryLabel cutfirstchar="3"$>など数箇所で、そのタグ全体がなかったものとして再構築されてしまいます。cutfirstcharを入力しないと、問題なく動くのですが、折角の素晴らしいプラグインですので、質問させて頂きました。
因みに私は静的にMTを扱っています。
私の設定ミスかもしれませんので恐縮ですが、お答え頂ければ幸いです。
壱
>yasuさん
こんにちは。
cutfirstcharプラグインは、MT3.2でも動作します。
もしよろしければ、動作しないテンプレートをお送りいただけないでしょうか。
とんかつじ
はじめまして。
cutfirstchar 重宝してます。
yasuさん同様、私もMT3.2に上げたら、cutfirstcharを使った部分が表示されなくなりました。
それまでは「MovableType 上級カスタマイズ術」p204にあるソースを使っていたのですが、
このページにあるソースに入れ替えると使えるようになったので報告しますね。
#Shockwaveのダウンロードがウザイっす#
#yahoo ツールバーなんていらん!#
(*`ε´*)ノ
フォウ
はじめまして^^
cutfirstcharを使わせていただきました:pp_05.gif:
ついでに、トラバもさせてもらってます:pp_01.gif:
MTは最近始めたばかりなので、いろいろカスタマイズしまくり(*≧∀≦*)です。
また寄らせてもらいます(o ̄∀ ̄)ノ
壱
>フォウさん
こんにちは。
プラグインをご利用いただき、ありがとうございました。
たかはし
はじめまして。
今、作成中のサイトでプラグインを使わせていただいてます。
ありがとうございます。
ひとつ、質問させていただきたいのですが、
このプラグインでカットできるのは
1バイトの文字だけなのでしょうか?
2バイト文字をカットしようとすると、
カットしたカテゴリーの前に文字化けした様な
2文字が挿入されてしまいます。
(ちなみにこちらのMTは3.2-ja-2です。)
壱
>たかはしさん
こんにちは。
2バイト文字をカットする場合は、長さをバイト数単位で指定すれば動作するはずです。
例えば、「123」のような2バイト文字3文字を切り取るなら、「cutfirstchar="6"」でできるはずです。
たかはし
壱さん
早速のご返答ありがとうございます。
カットすることはができました。
今回、試みたのは
021├チャーハン
というものです。
このカテゴリーの”021├”の部分をカットしたのですが、
「cutfirstchar="6"」ですべてカットできました。
文字コードがUTF-8の場合”├”は3バイトなのでしょうか?
ご参考までにどのような感じだったのか、下記にあげておきます。
「cutfirstchar="4"」:??チャーハン
「cutfirstchar="5"」:?チャーハン
「cutfirstchar="6"」:チャーハン
長々と失礼いたしました。
どうもありがとうございました。
壱
>たかはしさん
こんにちは。
UTF-8では、全角文字は3バイトや4バイトになります。
たかはし
>UTF-8では、全角文字は3バイトや4バイトになります。
そのようですね。初めて知りました。
日本語=2バイトという事しか頭にありませんでした。
サイトが出来たらご連絡させていただきます。
masa_fuji1206
はじめまして。
便利そうなプラグインなので使わせて頂きたいとと思いますが動作しません。下の方と同じ症状です。何か設定が悪いのでしょうか?
MT3.2です。
> <$MTCategoryLabel cutfirstchar="3"$>など数箇
> 所で、そのタグ全体がなかったものとして再構築され
> てしまいます。cutfirstcharを入力しないと、問題な
> く動くのです
masa_fuji1206
はじめまして。
便利そうなプラグインなので使わせて頂きたいとと思いますが動作しません。下の方と同じ症状です。何か設定が悪いのでしょうか?
MT3.2です。
> <$MTCategoryLabel cutfirstchar="3"$>など数箇
> 所で、そのタグ全体がなかったものとして再構築され
> てしまいます。cutfirstcharを入力しないと、問題な
> く動くのです
壱
>masa_fuji1206さん
こんにちは。
拙著「ブログ自由自在Movable Type上級カスタマイズ術」のcutfirstcharプラグインをお使いではないでしょうか?
その場合、サーバーの環境によって、cutfirstcharを入れたタグ全体がないものとして動作することがあります。
このエントリーにあるcutfirstcharプラグインと差し替えてみてください。
それでもだめな場合は、申し訳ありませんが原因は不明です。
masa_fuji1206
>壱産
お返事ありがとうございます。
このエントリーのソースを使っております。
と言うことは原因不明ということになりますね。
サーバ環境か何かの影響なのでしょうか。。。
また、原因分かりましたら連絡いたします。
masa_fuji1206
先日問合せしたものです。
時間空けて再度設置してみましたら今度はうまく動きました。ありがとうございました。
toshi
はじめまして。
こういうプラグインを探していました。
カテゴリーの説明を使うのはどうもいやだったので、ホント助かります。
ありがとうございました。
由姫
はじめまして。由姫と申します。
こちらのプラグイン、とても素敵ですね。
理想に叶ったプラグインだったので、早速お借りいたしました。
その結果、正常に表示されたのですが、トップカテゴリーとサブカテゴリーが全て一列に並んで表示されてしまいます。
私は、にしているのですが、
例えば、
・くだもの
りんご
みかん
ぶどう
・お菓子
チョコ
ガム
というカテゴリーの表示にしたい場合には、頭文字の数字をどのように記載したら良いのでしょうか。
また、これ以外に何か原因が考えれられましたら教えていただきたく存じます。
ご多忙のことと存じますが、よろしくお願いいたします。
壱
>由姫さん
こんにちは。プラグインをご利用いただき、ありがとうございます。
トップとサブのカテゴリーを分けて表示するようにしたい場合、トップとサブのそれぞれの階層に連番をつけるようにすると良いです。
例えば、以下のように番号をつけます。この場合だと、先頭の6文字をカットすれば良いことになります。
010000くだもの
010010りんご
010020みかん
010030ぶどう
020000お菓子
020010チョコ
020020ガム
その上で、MTSubCategoriesタグを使って、階層も考慮して
カテゴリー一覧を出力するようにします。
由姫
こんばんは、由姫です。
>壱さん
早急なご指導ありがとうございました。
>その上で、MTSubCategoriesタグを使って、階層も考慮し>てカテゴリー一覧を出力するようにします。
無事に出力できました。
本当にお世話になり、ありがとうございました。
これからもこの素敵なブログがより繁栄しますように:pp_01.gif:
Dhwty
カテゴリの順番を任意で指定したくこちらのプラグインを使わせていただいてます。
ただ、今までのカテゴリ名に数字を足すので、ディレクトリ名も変わり、アーカイブの場所が変わりますよね。
例~/ex/ → ~/205ex/
ディレクトリ名を変えず、かつ任意の順番にカテゴリを並べることは可能でしょうか?
壱
>Dhwtyさん
こんにちは。プラグインご利用ありがとうございます。
ご質問の件ですが、CutFirstCharプラグインでは無理です。
ただ、ご希望のようなことをするプラグインを新たに作ることはできると思います。
検討してみますので、しばらくお待ちください。
Dhwty
壱さんレスありがとうございます。
このプラグインでは無理でしたか。
これ以外のプラグインも活用させてもらってます。これからも頑張ってください。
ウチヤマ
このプラグインをダウンロードしたのですが、
数字が消えません。
ご教授願います。
カテゴリーは以下です。
<h2>安宿情報</h2>
<MTSubCategories>
<MTSubCatIsFirst><ul style="margin-bottom:10px;"></MTSubCatIsFirst>
<li>
<MTHasParentCategory>└ </MTHasParentCategory>
<MTIfNonZero tag="MTCategoryCount">
<a href="<$MTCategoryArchiveLink$>">
<$MTArchiveTitle$></a> [<$MTCategoryCount$>]
<MTElse>
<$MTArchiveTitle$>
</MTElse>
</MTIfNonZero>
<MTSubCatsRecurse maxdepth="3">
</li>
<MTSubCatIsLast></ul></MTSubCatIsLast>
</MTSubCategories>
<MTBlogIfCCLicense>
<div class="link-note">
<MTSubCategories>
<MTSubCatIsFirst><ul></MTSubCatIsFirst>
<li><a href="<$MTCategoryArchiveLink$>" title="<$MTCategoryLabel$>"><$MTCategoryLabel$></a>
(<$MTArchiveCount$>)<$MTSubCatsRecurse$></li>
<MTSubCatIsLast></ul></MTSubCatIsLast>
</MTSubCategories>
</div>
壱
>ウチヤマさん
こんにちは。プラグインご利用ありがとうございます。
コメントに書かれたテンプレートタグを見ると、肝心のcutfirstcharの属性がどこにも指定されていません。
MTCategoryLabelタグや、MTArchiveTitleタグなど、カテゴリー名を出力するタグに、「cutfirstchar="x"」(xは切り取る文字数)を追加してください。
また、そちらのBlogを拝見しましたが、カテゴリーアーカイブのリンク先から推測すると、トップレベルのカテゴリーにだけ連番を振って、サブカテゴリーには連番を振っていないのではないでしょうか。
このプラグインを使う際には、すべてのカテゴリーに同じ桁数の連番を振る必要があります。
ウチヤマ
壱さん
とても丁寧に解説して頂いてありがとうございます。
お蔭様でできました。
Jack
素晴らしい情報に感謝しております
cutfirstchar.pl を早速ダウンロードし、
/mt-static/plugins
にアップロードし、
各カテゴリーに0001という数字を付けて
テンプレート→メインページにある<$MTCategoryLabel>
を
<$MTCategoryLabel cutfirstchar="4"$>
というように変更しましたが
各タイトルに4桁の数字(0001のような)がついたままです
このような場合どのようなミスが考えられますか?
cutfirstchar.plはパーミッションの変更はしておりません
cutfirstchar.pl を/mt-static/plugins
にアップロードし、
各カテゴリーに0001という数字を付けて
テンプレート→メインページにある<$MTCategoryLabel>
を
<$MTCategoryLabel cutfirstchar="4"$>
というように変更しましたが
各タイトルに4桁の数字(0001のような)がついたままです
このような場合どのようなミスが考えられますか?
cutfirstchar.plはパーミッションの変更はしておりません
バージョンは3.33です
テンプレート→メインページのタグも一応記載しておきます
よろしくお願いします
<h2 class="archive-header"><$MTBlogName encode_html="1"$>項目一覧</h2>
<div class="entry" id="entry-999">
<MTCategories>
<h3 class="entry-header"><a href="<$MTCategoryArchiveLink$ rel=" rel="nofollow nofollow">">
<$MTCategoryLabel cutfirstchar="4"$></a></h3>
<div class="entry-content">
<div class="entry-body">
<MTEntries lastn="999">
<a href="<$MTEntryPermalink$ rel=" rel="nofollow nofollow">"><$MTEntryTitle$></a> |
</MTEntries>
</div>
<p class="entry-footer"></p>
</div>
</MTCategories>
</div></xmp>
Jack
すいません、先ほどコメントを送信した者ですが
HTMLタグがこのブログに表示出来ないようなので
例を書けませんでした…
どうすればHTMLタグを表示できるのでしょうか?
申し訳ありませんがよろしくお願いします
壱
>Jackさん
こんにちは。
プラグインを「/mt-static/plugins」にアップロードされたのであれば、アップロード先が間違っています。
Movable Typeのインストール先ディレクトリの直下にある「plugins」ディレクトリにアップロードしてください。
タグの件はこちらで修正しておきました。
ちなみに、「<」を「<」にし、「>」を「>」にすれば、タグをそのまま表示することができます。
Jack
問題解決しました、
ありがとうございました
もう一点質問なのですが
親カテゴリには9900、9980
という数字を付けて
子カテゴリには9901、9801
という数字を振っております
親カテゴリは番号の若い順に上に表示されるのですが
子カテゴリは番号に関係なく
投稿した順に表示されるままです
どうすれば子カテゴリも順番通りに並ぶでしょうか?
よろしくお願いします
壱
>Jackさん
こんにちは。
ご質問の件ですが、35番のコメントを参照してください。
Jack
ご回答ありがとうございます
親カテゴリ、子カテゴリについて質問し、
以下の回答を頂きました
>Jackさん
>こんにちは。
>ご質問の件ですが、35番のコメントを参照してください。
こちらは参照しております
私のブログも以下のように設定しております
010000くだもの
010010りんご
010020みかん
010030ぶどう
020000お菓子
020010チョコ
020020ガム
しかし、それでも子カテゴリが順番通りに並びません
新しく投稿された記事が上に行くだけとなっております
おそらく以下の文の意味を良く理解していないのでは?
と思います
------------------------------------------------
その上で、MTSubCategoriesタグを使って、階層も考慮して
カテゴリー一覧を出力するようにします。
------------------------------------------------
子カテゴリに数字はふりましたが
MTSubCategoriesタグを使って、階層も考慮して
カテゴリー一覧を出力するようにするというのが
よくわかりません
お時間のある時で結構ですので
どうかご回答をよろしくお願いします
PS、
親カテゴリがキレイに並んだだけでも
非常に嬉しかったです
素晴らしいツールに感謝しております
壱
>Jackさん
こんにちは。
「新しく投稿された記事が上に行くだけとなっております」という文章からすると、エントリーの一覧を出力する際に、エントリーをカテゴリーの順に並べ替えたいということでしょうか。
このプラグインは、MTCategoriesタグやMTSubCategoriesタグでカテゴリー名の一覧を出力する際に、その順序を並べ替えるために使うものです。
MTEntriesタグでエントリー一覧を出力する際に、カテゴリー名の順に並べて出力するものではありません。
こちらのページのように、エントリーをカテゴリーごとにまとめて出力したいのであれば、以下のようにタグを組むと良いでしょう。
<MTSubCategories>
カテゴリー名等を出力する部分
<MTEntries lastn="各カテゴリーに出力するエントリーの数">
エントリーの情報を出力する部分
</MTEntries>
<MTSubCatsRecurse>
</MTSubCategories>
また、「全エントリー中の最新のエントリーn件を、カテゴリー順に並べ替えて表示したい」という場合だと、MT標準のタグだけではできません。
Collateプラグインを使えばできると思います。