お知らせ
2009年9月8日
「PHPによるWordPressカスタマイズブック」が発売されました。
WordPressのテンプレートにPHPのプログラムを書いてカスタマイズする方法や、WordPressのデータベースにPHPでアクセスする方法、またWordPressのプラグインの開発方法など、WordPressをより深く活用したい方に最適な一冊です。
他にも多数書籍を執筆しています。
こちらもぜひご覧ください。
カテゴリ/フォルダ/ブログ記事/ウェブページを並べ替えるプラグイン(SuperSort)の使い方
カテゴリ/フォルダ/ブログ記事/ウェブページを並べ替えるプラグイン(SuperSort)の使い方をまとめたページです。
1.ダウンロード
以下のリンクをクリックすると、プラグインのファイルをダウンロードすることができます。
- Movable Type 4.2用
SuperSort_1_00.zip - Movable TYpe 5用
SuperSort_1_10b1.zip
2.使い方
このプラグインの使い方は、以下の各ページを参照してください。
- その1・概要とインストール
- その2・並び順の初期化
- その3・カテゴリ等の並べ替え方
- その4・並び順に沿ってカテゴリ等を出力するテンプレートタグの書き方
- その5・並び順で前後のブログ記事やカテゴリなどを出力するテンプレートタグの書き方
- その6・並び順の番号を出力するテンプレートタグの書き方
- その7・ブログ記事/ウェブページの作成/編集/削除時の動作
- その8・カテゴリ/フォルダの作成/編集/削除時の動作
- その9・連番の振り直し
- その10・ブログ記事のページに同一カテゴリ記事一覧を出力する
- その11・カテゴリアーカイブにサブカテゴリの記事も出力する
- RC1版の追加機能(1)・ユーザーインターフェースの改良
- RC1版の追加機能(2)・offset/lastnモディファイアの追加、MTSortedTopLevelCategoriesタグ等の追加
- RC2版の追加機能・categoryモディファイア等の追加
3.ライセンス
SuperSortプラグインは、以下のライセンスでご提供します。
3-1.商用ライセンスのMTと組み合わせる場合
商用ライセンスのMovable Typeと組み合わせる場合は、有償とさせていただきます。
料金は、導入先のMovable Type1件につき3,000円とします。
お振込み方法等の詳細につきましては、メールフォームからお問い合わせいただきますようお願いします。
なお、アカデミックライセンスと組み合わせる場合は、無償とさせていただきます。
3-2.個人無償ライセンスのMTと組み合わせる場合
個人無償ライセンスと組み合わせる場合は、無償でご利用いただくことができます。
ただし、以下に従ってご利用いただきますようお願いします。
- 改変・再配布は自由に行っていただいてかまいません。
ただし、ソースコード中のクレジットは残しておいてください。 - 無料でご利用いただくことができます。
ただし、プラグインの開発やサポートのご支援のために、ドネーションをご検討いただければ幸いです。 - 当プラグインは無保証で提供します。
3-3.MTOSと組み合わせる場合
- GPLv2に従います。
- 無料でご利用いただくことができます。
ただし、プラグインの開発やサポートのご支援のために、ドネーションをご検討いただければ幸いです。
トラックバック(0)
トラックバックURL: http://www.h-fj.com/mt/mt-tb.cgi/1671.




コメントはスレッド表示になっています。
また、スレッドの先頭のコメントに対する返信には、先頭に矢印を表示しています。
正式版のリリースおめでとうございます。
ベータ版から使わせていただいていました。プラグインを追加した当初は順調に稼動していたのですが、何かのタイミングでエラーが発生するようになりました。
カテゴリの並び順を変更しようとすると「カテゴリの並び順の保存に失敗しました。」というエラーや
再構築の際に
タグでエラーがありました: categoriesの並べ替えでエラーが発生しました: Cannot find column 'order_number' for class 'MT::Category' /public_html/blog/mt/plugins/SuperSort/lib/SortCatFld.pm line 6
というエラーが発生します。
ウィジェット>カテゴリアーカイブ>
のように記述しています。
長文失礼いたしました。
ご回答いただけると幸いでございます。
宜しくお願い致します。
>daiziさん
こんにちは。
ご質問の件ですが、何らかの原因で、データベースのmt_categoryテーブルのcategory_order_numberフィールドがなくなってしまったのではないかと思います。
phpMyAdminを使うことができるのであれば、MTのデータベースのmt_categoryテーブルに、手作業で「category_order_number」フィールドを追加してみてください。
なお、フィールドの種類は「INT」で、長さは「11」、デフォルト値は「NULL」で、「NULL」のチェックはオンにします。それ以外の項目は空欄のままにします。
返信をいただきありがとうござます。
>phpMyAdminを使うことができるのであれば、MTのデータベースのmt_categoryテーブルに、手作業で「category_order_number」フィールドを追加してみてください。
さきほど確認しましたが、「category_order_number」フィールドは存在しているようでした。
一度削除し、指定していただいた内容でフィールドを追加しましたが同じエラーが表示されます。
なぜでしょうか…。わかりません。
>daiziさん
こんにちは。
申し訳ありませんが、そちらのサーバーで動作を追ってみないと、原因は分からなさそうです。
ちなみに、このプラグインではテーブルにフィールドを追加しますが、そのような動作をするプラグインは、環境等の原因で、サーバーによっては動作しないことがあります。
これまでにも何度か同様の現象の報告を受けています。
ただ、テーブルにフィールドを追加する処理は、MTの内部で行われていますので、プラグイン側での対処ができないのが現状です。
正式版リリースされていたとは知りませんでした(笑)
早速ですが、1つ要望があります。
sort_methodモディファイアをmt:categoriesブロックタグで使えるようにして欲しいです。
カテゴリ別の検索ボックスを設置しているのですが、mt:categoriesブロックタグで使えない為、並べ替えが出来ません。
http://www.materializing.net/archives/2008/07/23004337.php
よろしくお願いします。
>E110さん
こんにちは。
そちらのページを拝見しましたが、mt:Categoriesブロックタグの部分を以下のように変えれば、ご希望の動作になると思います。
ちなみに、MTCategoriesタグにsort_methodモディファイアを付けるには、MT本体のソースを書き換える必要があります。
ご指摘の通りにソースを修正したら成功しました!
ありがとうございました。
SuperSortプラグインをMTOSで利用させていただいております。
ありがとうございます。
ところで、先日新たに設置したMTOSにSuperSortプラグインを導入したところ、いったんは正常に動作したものの翌日になると動作しなくなって(並べ替えられなくなって)しまいました。
うっかり間違えてRC版を導入していたので、いったん削除してあらためて正式版を導入しましたが、変わりません。
なんとか再度正常に動作させたいのですが、プラグインを削除し再アップロードではダメでしょうか。
ちなみに同一サーバーの別ドメインでは、SuperSortがなんら問題なく動作しています。
ですから、サーバーとのマッチングといった問題ではないように思えます。
お手数をおかけして恐縮ですが、ご教示いただければ幸いです。
>俊彦さん
こんにちは。
申し訳ありませんが、いただいた状況だけだと、動作しなくなった原因は不明です。
さっそくのお返事ありがとうございます。
どのような情報をお伝えすれば、原因を特定できそうですか?
お教えいただければ、可能なかぎり調べてお伝えします。
また、繰り返しになりますがプラグインがうまく動作しないため削除→再インストールをおこなっても変化がないのは、なぜでしょうか。
なにか他にも削除すべきものがあるのであれば、お教えください。
以上、宜しくお願い致します。
>俊彦さん
こんにちは。
このプラグインは、データベースのテーブルにフィールドを追加しています。
そのため、プラグインのインストールをやり直すには、プラグインのファイルを削除するだけではだめで、フィールドを削除してテーブルを元に戻す必要があります。
このプラグインを削除する手順は、以下のようになります。
1.アップロードしたファイルをすべて削除します。
2.phpMyAdmin等を使って、MTのデータベースを操作できる状態にします。
3.mt_entryテーブルからentry_order_numberフィールドを削除します。
4.mt_categoryテーブルからcategory_order_numberフィールドを削除します。
5.mt_placementテーブルからplacement_order_numberフィールドを削除します。
6.mt_configテーブルにレコードが1つだけあると思いますので、そのレコードを編集する状態にします。
7.config_dataフィールドの値の中に以下のような部分がありますので、それを削除して、レコードを保存します。
PluginSchemaVersion super_sort=1.00
なお、プラグインが動作しない原因を調べるには、おそらくそちらのサーバーにログインしてデバッグすることが必要です。
このたびは、ご丁寧にお教えいただきまことにありがとうございました。
ただ、お教えいただいた削除方法は全データの削除が前提となっているため、あれこれカスタマイズしている身としては厳しいです。
また、お教えいただいたデータベースの操作も、残念ながら現時点での私には技術的なハードルが高すぎました。
そこで、このページに書かれている「remove_html="1"」を追記する方法で、ひとまず並び替えを行いました。
スマートな方法ではないかもしれませんが、同様の事象でお悩みの方がいらっしゃいましたら参考になさってください。
http://archive.mag2.com/0000169548/20080514100937000.html
いつも、お世話になっております。
さて、早速ですが、同一階層にフォルダとウェブページが存在した場合に、フォルダとウェブページも並び替える手段はないでしょうか?
>匿名さん
こんにちは。
申し訳ありませんが、フォルダとウェブページを混在させて並べ替える機能はありません。
早速のご返信ありがとうございます!
了解いたしました。
SuperSortプラグインを導入させていただきました。
大変便利なプラグインで、非常に重宝しております。
1点、並び替え画面にて不可解な現象が発生しておりまして、
こちらについて一度見解をいただけないかと思い、コメントいたしました。
●導入したプラグインのバージョン
ver 1.00
●現象の発生手順
1.空のカテゴリを2つ用意する
2.片方の空のカテゴリをクリックし、中身がロードされた状態にする(フォルダの開いたアイコン)
3.ロードされた状態のカテゴリに、もう片方の空のカテゴリをドラッグする
4.3でドラッグしたカテゴリが消えてしまう
その状態で保存した場合、並び替えは正常に行えております。
ただ、3でドラッグしたカテゴリが空ではなく、
サブカテゴリやエントリーを持っていた場合もそのまま消えてしまうため、
一度保存をしないとその後の操作に少々戸惑います。
また、エントリーをドラッグした場合は、正しく子として表示されます。
●発生を確認したMT
・MTOS 4.31
・MovableType 4.261
ローカル、またサーバー上で確認をしているのですが、
一度ご確認いただけませんでしょうか?
どうぞよろしくお願いいたします。
いつもお世話になってます。
Movable Type Pro version 4.33-jaで、カテゴリーを指定してブログ記事を保存しようとすると、loadingが延々と続いたあげくエラーが発生し、保存終了時の画面に戻ってこないというトラブルに見舞われました。この時「変更を保存しました。 」と表示はありません。
カテゴリーを指定しない場合はエラーは発生しないので、試しにSuperSortを無効にしてみたところ、エラーは解消し、カテゴリーを指定しても保存することができました。
このトラブルの原因はどこにあるのでしょうか?
何か考えられる事はありますか?
>footbrainさん
こんにちは。
こちらでMT4.33環境で試してみましたが、問題なく動作しました。
申し訳ありませんが、そちらの環境で動作を追ってみないと、原因は分からないです。
返信ありがとうございます。
>こちらでMT4.33環境で試してみましたが、問題なく動作しました。
そうでしたか。お手数をお掛けして申し訳ありませんでした。
こちらでも、組み合わせるプラグインを変えて再度テストしてみたのですが、
公開保存は、正常に動作しています。
未公開保存の場合、保存はできているのですが、タイムアウトでもしているようで、数分経過しても「新しいブログ記事を作成」画面に戻ってくる事ができずにエラーになっているようでした。
>壱さん
MT4.34にアップグレードしたところ、既存の問題は解消され、正常に動作しています。
MT4.33に問題があったようですね。
お手数をお掛けしました。
いつもお世話になっております。
SuperSortで1つ質問があります。
こちらで配布されているプラグインではないのですが、記事で設定したタグが他の記事と重複した場合に関連記事として出力できるタグ機能拡張のプラグインを使用しています。
ttp://code.google.com/p/ogawa/wiki/TagSupplementals_Plugin
しかし、例え同じタグが設定されていても、属するカテゴリが同じでなかった場合は関連記事として出力されないので困っているのですが、これはSuperSortと併用しているのが原因という可能性はありますでしょうか。
他所様のプラグインの話も混ざっており大変恐縮なのですが、ご教授いただけると助かります。
宜しくお願い致します。
>ロンさん
こんにちは。
こちらで試してみた限りでは、SuperSortプラグインが入っている環境でも、TagSupplementalsプラグインでの関連記事表示を問題なく行うことができました。
ちなみに、MySQLの文字コードの関係で、「同じタグが正しく認識されない」という現象が起こることがあります。
以下の記事を参照してみてください。
http://www.apstars.com/blog/211movable_type4/mt4_20.php
ご返答ありがとうございます。
ご提示頂いた情報を参照してみたのですが、MySQLの文字コードは元々UNICODE(UTF-8)でしたので問題なさそうでした。
そこからタグ一覧ページを見ていた所、同じタグ名をつけたつもりが一文字だけ大文字になっている事に気づきました…
まさかこの大文字・小文字の違いで別のタグと認識されているのではと思い、修正してみると無事に関連記事として出力されました。
完全に私のミスで、さらに他所様のプラグインの話にも関わらずわざわざ検証までしていただいて本当にありがとうございました。
これからタグを記述する際は、全て小文字に統一するように注意します。
ではこれからもブログの更新楽しみにしています!