MT5のちょこっとしたカスタマイズ記事です。
MT5では、メインページ始めカテゴリ記事その他、標準では新しい記事が先頭に来て日付順に並びます。
普通のカテゴリや月別アーカイブでは、新しい記事が上に来て問題無いのですが、たとえば、クーガーサモンのアーカイブでは、やはり
「ステをCHAに振りなおし→クガ初サモン→お別れ81F→再度ステ振りなおし」
と古い順に並んでいたほうが読みやすい。
で、何か良いプラグインは無いかなと探したところ、シークレットコメントでお世話になり、各種の優れたプラグインを提供してくださっているH.fujimotoさんのプラグインの中にあった。
The blog of H.Fujimoto
MT5のPLUGIN集の中にある「SuperSort」というのがそれ。
カテゴリの並び順、記事の並び順を自由に設定できるという優れものらしい・・・
早速ダウンロードして、インストール。
エラーも無くインストール完了。
記事の並び順制御のため、データベースに記事の連番を振ったりとか結構大掛かりな更新を行うという事で、念のためバックアップ。
初期設定~プラグインを有効にして、クーガーサモンの記事の並び順の変更設定を行い、再構築。
再構築も完了。
BLOG開いて確認するも、何も変わっていない(´・ω・`)
試しに、簡単そうなカテゴリの並び順を、リネージュを先頭にってやってみたけど、変わらず。
クーガーサモンの並び順変えるために、データベース変更を伴う大掛かりなPluginを入れるのもどうかなぁという気分でもあったので、早々にSuperSortは諦めました。
言うまでもありませんがSuperSortの問題というより、ろくにマニュアルも読まずにささっとやっちゃったために、どこか見落としがあるせいだと思います。
で、プログラマとしては失格レベルの対応ですが、テンプレートのソースコードにベタうちで対応。
カテゴリ別記事リストのテンプレート。
[元の記述]
<mt:Entries>
<mt:Ignore><!-- Use the Entry Summary module for each entry published on this page --></mt:Ignore>
<$mt:Include module="ブログ記事の概要"$>
<$MTPageSeparator$>
</mt:Entries>
[修正後のソース]
<MTIfCategory label="クーガーサモン">
<MTEntries sort_order="ascend">
<mt:Ignore><!-- Use the Entry Summary module for each entry published on this page --></mt:Ignore>
<$mt:Include module="ブログ記事の概要"$>
<$MTPageSeparator$>
</mt:Entries>
<MTElse>
<mt:Entries>
<mt:Ignore><!-- Use the Entry Summary module for each entry published on this page --></mt:Ignore>
<$mt:Include module="ブログ記事の概要"$>
<$MTPageSeparator$>
</mt:Entries>
</MTIfCategory>
IF と elseの中に同じ記述が重複していて面白く無かったんだけど、どこをどう弄っても纏めることが出来なかったorz
忘れないように記事にしときました。
[追 記]
上述の通り、SuperSortでは、インストール後の初期設定でデータベース(Mysql)の構造を変えています。
通常のPluginでは、サーバー上のPluginのフォルダを消せばアンインストールとなりますが、SuperSortではどうなんだろうと気になっていました。
作者様のWEBサイトをジックリ見ると、コメントへの返信の中に、やはりデータベースの修復の方法が書いて有りました。
以下引用させて頂きます。
-------------------------------------------------------------------------------------------------
このプラグインは、データベースのテーブルにフィールドを追加しています。
そのため、プラグインのインストールをやり直すには、プラグインのファイルを削除するだけではだめで、フィールドを削除してテーブルを元に戻す必要があります。
このプラグインを削除する手順は、以下のようになります。
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
--------------------------------------------------------------------------------------------
一応上記手順どおり行って、再構築も無事完了を確認しました。
MTというかこの手のものは極めれば非常に便利なんだろうけど、
どうにも便利さとかかる手間や知識のバランスが取れていると思えない…。
そこまでやるならレガシーWebで作るわ!と思ってしまうw
でーにっつさん、コメント有難う。
確かに、凝ったBLOGを完璧に作ろうと思うと本格的なCMSを使うメリット(極める努力と仕上がり具合のバランス)は有るんだろうけどねぇ。
リネージュ絵日記書くためだけなら運用する労力とBLOG内容のバランスは完全に崩壊してますなぁw
まぁ、私の場合はこういうのシコシコ弄るのも趣味のうちなのでやってますが、他人に安易にMTを薦めることはできません。
またよろです。