この記事は、「Movable Type の SQL を見てみませんか」の続きです。プラグインは こちらからダウンロードできます。
ぬかみそプラグインです。僕自身が開発業務の人間なのでややそっち寄りな機能が多いですが、制作を行う人に有用な機能もたくさんあります。入れといて損はないプラグインですが、いらない機能とかあったらGitHub から Fork して自分好みにいじってください。
ネーミングは某氏が以前公開しておられた nukamiso.css へのリスペクトです。日々足したり引いたりして整えているものに与える名前としてとてもいいなと思って倣いました。いくつかの機能はリリースされたばかりの PowerCMS 4 にも盛り込まれています。Movable Type 5 でも 6 でも動作します。
本当に必要なウィジェットってあまりないですよね。ダッシュボードが重くなる原因になるので非表示にします。「ウェブサイトとブログ」はあってもいいかなあとも思うのですが、過去にこれがボトルネックになっていたことがあったので、僕は使わないようにしています。
複数の画面で右上に表示される「表示オプション」ですが、このボタンのために管理画面上部が冗長な印象になります。これを右上に固定し、ボタンを押した時に表示されるメニューのスタイルも整えます。
表示オプションのスタイル
.htaccess をインデックステンプレートで出力する場合とか、「公開されたテンプレートを確認」しても見えないですよね。せっかくうまくまとまった管理画面があるのに FTP しないといけないんじゃ不便なので、編集画面から見えるようにします。
ファイルの内容を表示
テンプレートの内容を Javascript でパースして、画面右側にタグのリストとリファレンスへのリンクを表示する機能ですが、特段役には立たないですよね。ブラウザのリソース使ってまでやる必要ないと思うので、これが行われないようにします。
Listing Framework が導入されてから、システムログが正確な時系列に並ばないケースがたまに出てくるようになってしまったので、ID 順で並ぶようにします。
また、システムログについては以下のような補助機能があります。
システムログのスタイル
システムログのリンク
ある画面を表示した場合にログが発生していた場合、画面右上にそのログを表示します。エラーログの見落としを防ぐこともできますし、デバッグログを仕込んでいる場合はいちいちシステムログを表示する必要がなくなります。
ポップアップ・ログは draggable なので、画面中の任意の場所に移動させることができます。
ポップアップ・ログ
ファンクションタグ <$MTDump$> が使えます。その時点でのテンプレート変数を <pre> タグで囲んで出力します。デバッグモードにして管理画面に入れてみるといろんな情報があって面白いですね。
モディファイア stash="1", all="1" を付ければ、より広い範囲で、コンテキストを含めた情報を出力します。
Nukamiso::Util の dumper, debug, debug_query を使うことができます。dumper はいわゆる Data::Dumper::Dumper ですが、引数の数や形式を見てほどよく(※ 個人差あります)振る舞います。スカラーでも配列でもハッシュでもいいし、リファレンスでなくてもかまいません。UTF-8 フラグ付きのマルチバイト文字が含まれていて、エスケープされるケースでも、視認できる形に戻してくれます。debug はそれをシステムログに出力します。
debug_query はパラメータを全部つないでシステムログに出力します。POST パラメータをちゃんとチェックしたい場合に使えます。
use Nukamiso::Util qw( dumper debug debug_query );
sub _mt_app_cms_pre_run {
debug( $app );
}
僕は、PowerCMS という Movable Type プラグイン製品の開発とメンテンスおよび、案件やサポートから発生するカスタマイズ業務に携わっています。ver.1.0 からなので、もう 7 年近くになるでしょうか。いわば、プラグインを仕事にすることの酸いも甘いも、現役で身を持って味わっているエンジニアです。そんな僕のぬかみそ、GitHub に置いてあります。Fork とかして皆さんのぬかみそ作ってください。
Comments