MTでぽちぺたを利用してみる
MTのタグ入力に「ぽちぺた」、使えます。かなり。
MTの新規エントリー投稿画面のタグのボタン、こんなんっじゃぜんっぜん足りん!!と思ってる方は自分も含め結構いるんじゃないかと思います。 自分的にどのくらい足りないかというと、もの凄く足りません。
属性が多すぎて実装が大変でしょうが、せめてfontタグないしはspan style="...くらいあっても良さそうなもんです。ところがstrong(より強調)・A(リンク)タグはともかくとして、全然使わないI(斜体)・U(アンダーライン)・Aタグと言っても使わないmail to(メールアドレスを挿入)・滅多に使わないblockquote(引用)しかタグボタンが無いんです(ver3.2-ja-2)。htmlをタグエディタで作ってた自分としては不満極まりない。tableタグなんか自分で打ってたらすごく大変です。でも、本体の改造なんかしたっていくつタグが必要になるかと思うとキリがないし……。
で、普段から使用していた「ぽちぺた」、本来はこれパスワード生成管理用ツールなんですが、これを利用出来ないかと思いついたわけです。
ぽちぺたの特徴はパスワードを生成・管理する事もあるのですが、何より良いのがそれをマウスクリックのみで好きな所へ貼り付け出来ることです。これを利用してMTにタグを楽に挿入しようというわけです。タグだけじゃなくて、よく使うURLとか文章とか、はっきり言ってなんでもいいです。ぽちぺた内にはグループを3つ登録出来ますから、1つはパスワード管理に、1つはMT用にと使い分け出来て超便利。
本文にタグを使う人はちょっと試してみて貰いたいです。同時に色々なパスワードまで管理出来て非常に楽ですよ。パスワード管理ソフトとしてはまだまだ改良点ありと思いますが、それは今後のバージョンアップに期待です。
cronで自動的に人気記事ランキングを更新する
先日は人気記事ランキングを作る話を書きましたが、今日はそれを自動的に毎日更新するcronのやり方です。当方のサーバーはXREAですので、XREAでのやり方を。
まずはこういう内容のファイルを作り、.shファイルとして適当に保存します。名前は適当で。makerank.shとかそんな感じ。
#!/bin/sh
#php
/usr/local/bin/php /virtual/ID/public_html/(MTまでのパス)/makerank.php
exit
ID・MTまでのパスは各自書き換えで。ここではhottopicテンプレによって出力されるファイルをmakerank.phpとします。これも各自書き換えで。
次にFTPでそれを/にアップロード。public_htmlの上の階層ですね。一応パーミッションは700としました。
で、管理メニューに入ってから、cronジョブの設定を行います。例にもありますが、毎日夜中の0時に更新したければ「0 0 * * * makerank.sh」というような設定をします。
実際に時間が来て、cronが実行されるとメールが届きますので、これで正常に動いたことを確認します。
今後このメールがいらないなら、管理メニューから指定するファイル名を
makerank.sh 2>&1 > /dev/null
とすればメールは来なくなります。あとはほっとけば毎日更新してくれます。楽ですよ。
人気記事ランキング
ここ数日、人気記事ランキングというのをつけようとしてmt-mostvisitedプラグインを必死にカスタマイズしてましたが、結局断念しました。phpモジュール化してる上に、どういう訳かファイル名を拾ってくれないんですよ。個別エントリーは"yyyy/mm/entry_basename.php"と至って普通なんですがね。やっぱしEntry_IDつけないとダメみたいですね。
という訳で、人気記事のランキングを表示する - Open MagicVox.netを試してみました。これはモジュール化等カスタマイズしまくってるMTユーザーにはうってつけ! Entry_IDに縛られない(最重要)、軽い、カスタマイズ超らくちん! ダウンロードしてtmplファイルをエディタで開き、設定を終えてから、まるごと中身をインデックステンプレートに貼り付け、再構築して出来上がり。導入から稼動まで約1.5時間、なんかあんなに苦労していた自分がバカみたいです。
Open MagicVox.netさんのところを熟読頂いた上で、我がXREAサーバーでのhottopic200.php.tmpl設定・カスタマイズを記述します。独自ドメイン・IDは各自書き換えで。
18行目過去n日間のログを集計するか
$nDivDay = 5;
これはXREAの生ログが5日分しか保存されないからです。せめて7日にしてくれ。もし昨日のランキングとかにしたいなら$nDivDay= 1とかでもいいです。とにかくXREAでは5以下にしてください。7にしてあっても5日分しか集計されてませんので意味ないです。
21行目ログファイルのディレクトリパス
// $szLogDir= '/virtual/ID/log';
apatchの生ログが置いてある場所です。生ログが保存されてない場合はXREAのコントロールパネルから、生ログを保存するように設定してください。解析済ログが/public_html/log/に保存されているかもしれませんが、これはこのスクリプトでは使いません。
53-55行目
array_push ($ret, sprintf ("access_log.%d", $past));
array_push ($ret, sprintf ("access_log_%04d%02d%02d", $year, $month, $day));
array_push ($ret, sprintf ("access_log_%04d%02d%02d.gz", $year, $month, $day));
を以下に差し替え
if ($past == 0) {
array_push ($ret, sprintf ("独自ドメイン.log"));
}else{
array_push ($ret, sprintf ("独自ドメイン.%d.log",$past));
}
ここでログファイル名を取得しています。
81行目付近は個別アーカイブのファイル名のパターンマッチングですが、当方の個別エントリーパスは"/diary/archives/yyyy/mm/entry_basename.php"なわけですので、
"/^\/diary\/archives\/\d{4}\/\d{2}\/(\w+)\.php/"
としました。←設置稼動の1.5時間の大部分はこれのせい。正規表現は本当に奥が深いです。
そんなわけでメニューの中でひっそりこっそり稼動しています(来客数が少ないんで)。すばらしいスクリプトを作って頂き、ありがとうございます。xreaではcronが使えるので、あとで挑戦しようと思います。
2006.09.01追記
内容を少々修正しました。
MT3.2で独自ドメインでXREAサーバーでのコメント投稿エラー
一般に出ている3.1から3.2へのコメント周りの仕様変更に伴って、コメント投稿時に「エントリーIDが見つかりません」などと叱られる現象が発生するようになりました。いまだに直ってないブログも見かけます。
変更点を簡単に言えば、headの部分に
<script type="text/javascript" src="<$MTBlogURL$>mt-site.js"></script>
を追加、bodyの部分に
<body onload="individualArchivesOnLoad(commenter_name)">
を追加、あとはデフォルトテンプレのコメントの辺りを参考にというところなんですが、表題の環境である当方、これだけでは駄目でした。
FTPソフトでmt-config.cgiを見てみること28行目。ここが独自ドメインになってませんでしたので、riesuke.comに変更したら、あっさり解決致しました。
ちなみに、昨日のエントリの通り、アップグレード時にはXREA独自のインストCGIを使用してます。そんなわけで、独自ドメインでXREAの方で同じようなお悩みがおありでしたら、お試し下さい。
それにしても、仕様変更の度にこう書き換えていくのは疲れますね。
MovableType Ver3.2-ja-2 にアップグレード
今日は7回目の太田母斑手術をやったこともあり(その辺は後で書きます)、なんかヒマになってしまったので、MTをアップグレードすることにしました。随分サボってましたし。で、今まで使ってたのが3.11jaだったわけで、たった今3.2jaを飛び越えて3.2jaR2へアップグレードしてました。というか、今現在も完全には終わってないわけですが(笑)
当方、XREAのサーバーを使わせて頂いてまして、サポート板ではXREA用MTの設置CGIが公開されています。めんどっちぃ設定作業をすっとばして、最低限のユーザー情報なんかを書き直すだけで、自動で設定までしてくれちゃう優れもの。今回もこれを使用し、アップグレードを試みることにしました。
前回だか前々回だか、アップグレードで大変な目に合いましたので、これを教訓にしてログとカスタマイズしたテンプレをすべて書き出してから、作業開始。えーと、XREAで用意されたCGIを何行か訂正してっと……。インストCGI実行。
今回のMTのパッケージ、新規インストとアップグレードの区別が無いとの事で、インスト作業自体はすっげーいともあっさり終了致しました。ログインすると、自動でアップグレード作業が始まります。早いです。素晴らしい。
しかしこれで終わりかと思いきや、日誌のトップが3.2ja用インストログイン画面から動きません。アップグレード自体は終わってるし、ブログの設定画面とかはもう3.2ja用になっちゃってるのにな? でもこれは、デフォルトのindex.htmlを削除したらあっさり解決しました。……が。
いやあぁぁぁあぁっ、カスタマイズしたテンプレートが全部消えてるうぅ!!
そんなわけで、今手動で懸命にテンプレートを修正して、なんとか見れるとこまで漕ぎつけたわけです。テンプレートもバックアップとっといてよかった〜はぁ。
……よく分かんないんですけど、MTのアップグレードって、消えるもんなんですかね? XREAのCGIってあくまで新規用?(これが正しいっぽいけど) 俺さま超わけわかりません。でも、なんとか見れてますよね、じゃぁいいや。←楽観主義 でも何かみつけちゃったら報告宜しくお願いします。
なお現状ではコメントがたぶん「エントリーIDが見つかりません」とか言われて投稿出来ないと思いますので、コメントはちょっと待ってて下さい。今いっしょうけんめい直してます。何日かかかるかも。
2005.10.08追記
もうコメントは大丈夫です。疲れました。実際にどうしたかはこちらをごらん下さい。



