2008年11月14日金曜日

MT ダイナミックパブリッシングにするとコメントが表示されない

これは、MT3系を使っていたころからの悩みの種なのですが、
ダイナミックパブリッシングを使用するとブログ記事のコメントのところだけ見事に消えてしまうのです。
管理画面上にはちゃんと表示されるし、コメント数もカウントされて増えているのに、肝心のコメント本文だけ表示されないときたもんだ。

スタティック出力にすると、ちゃんと表示されるのに・・・・・

色々試してみるも、いまだに解決せず。
で、スタティック出力に戻した次第。

MTに関しては、今までもいろんな「不具合」に遭遇してきたけど、
Webで調べてきては、あちこちいじくりまわるという原始的な方法で解決してきました。
(一部は記事にしております)

この問題も解決したいのだけれど、ちょっと「行き詰まり感」がちらほらと。

と、いう訳で、対応策をご存知の方、ぜひお知恵をお貸しくださいませ。



この件に関しては、現在も継続調整中です。
よって、動作と表示などの確認調整用のテストコメントの出現・ダイナミック、スタティック切りかえに伴うにコメントの表示、非表示など、お見苦しい点はご了承ください。


2010/07/17追記
現在、ダイナミックパブリッシングテスト運用中ですが、コメント機能は正常に動作しているみたいです。
それで、ヒントと言うか、ちょっと気が付いたことがあるのですが、ダイナミックパブリッシングで出力すると、コメントタグがうまく出力されないみたいです。その結果、ソース中にコメントを入れてあると、その前後とか、コメントタグ以降のソースが出力されずに、結果、ブラウザで表示するときにエラーになる、という感じがあります。
あと、スタティックだと有効なソースが、ダイナミックだとエラーになったりとか。全くいじってないのに、ダイナミックにするとエラーになったソースがあります。Java Script関連です。
いずれにしても、原因を理解してないので、なんとも言えませんが。


2008年11月13日木曜日

MT4.2 CAPTCHAの不動作回避策。

MT4.2でコメントの承認に使われるCAPTCHA画像が表示されない不具合に遭遇した人も多いことでしょう。私もそのひとりでございます。
回避策として、以下にまとめておくことにします。

1
Perlモジュール
Crypt::DH
Crypt::DSA
Image::Magick

が導入されていること。

2
mt-config.cgi内に、
CaptchaSourceImageBase /home/******/******/www/htdocs/mt-static/images/captcha-source
など、images/captcha-sourceへのパスの記述があること。
(CaptchaImageSourceBaseではないので注意する)

3
MTの設定→登録/管理、コメント等で適切な設定がされているのが前提です。

  1. 登録/管理 で認証方式は「認証なしコメント」のみチェック。

  2. コメント設定の表示オプション でCAPTCHAプロバイダは「Movable Type既定」を選択。


4
CAPTCHA画像が表示されるべき所のリンクがデッドで画像が出ない場合、その画像部分のプロパティを開いて、URLをコピーし、直接アドレスバーに入力した場合、以下のようなエラーメッセージが表示されることがあります。
Can't locate object method "Blur" via package "Exception 415:
Postscript delegate failed `/tmp/magick-XX6Ui17y'"
(perhaps you forgot to load "Exception 415:
Postscript delegate failed `/tmp/magick-XX6Ui17y'"?)
at lib/MT/Util/Captcha.pm line ***.


この場合、利用しているサーバーで、ImageMagickのGhostscriptパッケージが導入されていない可能性があります。管理者に相談してみてください。

5
Captcha.pmの一部変更
(MTインストールディレクトリ) / lib / MT / Util / Captcha.pm の187行目、

my $im = $imbase->Montage(geometry => $geometry_str,
tile => $tile_geom);


を削除して、

my $im = $imbase->Append(stack=>"");


を挿入。


ここまでやれば大丈夫だと思うのですが、いかがでしょうか。




2008年11月8日土曜日

MT4.2 画像のポップアップウィンドウのカスタマイズ方法。

ポップアップウィンドウのスクロールやリサイズを有効にする方法として、以前のMT3系ではCMS.pmのポップアップウィンドウ生成部分(3.2 では3600行目あたり、3.3b2 では4700行目辺り)の

scrollbars=no




scrollbars=yes(または1)


に変更し、さらに、スクロールバーを表示する設定にした場合、スクロールバーが画像にやや被ってしまうのを回避するために、上記修正場所の少し上の行、

my $link = $thumb  


で始まる行の上に

$width += 17;


を書き足す方法が知られていました。
��詳細は、「小粋空間」さんの、画像のポップアップウィンドウをカスタマイズするhttp://www.koikikukan.com/archives/2006/06/24-015315.phpを参照)


MT4系ではこの方法は使えません。
いくらCMS.pmを検索しても、この部分は見つかりません。

では、どこにあるのかといいますと、
画像ポップアップウィンドウを生成しているファイルは、MT \ lib \ MT \ Asset \ の中にある、Image.pmです。

ということで、ここをいじるとポップアップウィンドウのカスタマイズが可能になります。

Image.pmの310行目付近

q|<a href="%s" onclick="window.open('%s','popup','width=%d,height=%d,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false">%s</a>|,

(アンカータグは全角文字にしてあります)



q|<a href="%s" onclick="window.open('%s','popup','width=%d,height=%d,scrollbars=1,resizable=0,toolbar=0,directories=0,location=0,menubar=0,status=0,left=0,top=0'); return false">%s</a>|,

(アンカータグは全角文字にしてあります)

に書き直します。(1=yes、0=noですので、どちらの表記でもかまいません)
上記例だと、スクロールバーのみ表示、リサイズ不可です。

さらに、その少し下の行、


$asset->image_width,
$asset->image_height,




$asset->image_width +17,

$asset->image_height +25,


に書き直します。(+数値は適当に変更して調整してください)

これで、MT3系で行ったカスタマイズと同じ状態が作れます。

(自分の環境でしか試してませんので、果たしてこれで正解かどうかは不明です(^_^;) )


もっとも、現在は格好いいプラグインがありますから、あえて標準のポップアップを使わなくてもいいのかもしれませんが。



2008年11月4日火曜日

Racing - 赤埴山周辺。

昨夜は猪苗代町内であるぱいんSCの総会がありました。




で、一夜あけまして、猪苗代スキー場方面(赤埴山)の風景です。
数日前には磐梯山頂付近は初冠雪したそうです。
赤埴山はまだ冠雪、積雪はありませんが、雲の笠をかぶっていました。

いよいよ、今シーズンもあとわずかで始まります。