September 08, 2005

Trackbackを受けた時に自動的にRebuildさせるには。(MT-Blacklistを使っている場合)

[ BLOGブログに関するカテゴリー]

移転しました!新しいURLは…

http://sho.s203.xrea.com/wp/

Movabletype2.6661でトラックバックを受けた際にインデックスページは自動的にリビルドされるけど個別ページはRebuildされないようになっている
たぶん、負荷を下げるためかな?

かなり前にSho's Blogのデザインを変えた際に自動的にリビルドされないといけないようなデザインに変更していたんだけど其の設定がずっとうまく行ってなくてそのままにしておりました

先日、ふっとそのことを思い出してまた、挑戦してみることに、、、
いくらやってもうまく行かない、、、

lib/MT/App/Trackback.pm
の200行目くらいにある
$app->rebuild_indexes( Blog => $blog )
or return $app->error($app->translate(
"Rebuild failed: [_1]", $app->errstr));
の後ろに
$app->rebuild_entry( Entry => $entry )
or return $app->error($app->translate(
"Rebuild failed: [_1]", $app->errstr));
を書いてもダメ
順番を入れ替えたりいろいろしてみました

結構長い時間がんばったのですがダメだったんだよね〜
ってことでもしかしたら別のところに問題があるんじゃないかっていろいろと別の設定をいじったりテンプレートを修正したり。。。

で、やっとわかりました!
いろいろやっているうちにスパムコメントが来ているのに気がついて削除!っておい!もしかしてこれが原因じゃないの?ってことでMT-Blacklist - A Movable Type Anti-spam Pluginのコードを検索したらありました。。。

具体的には
extlib/jayallen/MTBlPing.pm
の133行目付近の

$app->rebuild_indexes( Blog => $blog )
or return $app->_response(Error =>
$app->translate("Rebuild failed: [_1]", $app->errstr));

の後ろに

$app->rebuild_entry( Entry => $entry )
or return $app->error($app->translate(
"Rebuild failed: [_1]", $app->errstr));

を追加すればOKでした!
見事にトラックバックを受けると自動的に個別のエントリも再構築してくれるようになりました!

分かってから調べるとありました!

ぼっちの葉隠日記: 個別ページにトラックバック表示

の下の方に書いてありました

こういうのは分かってみると簡単なんだけど分からない時には本当にわからないのよね(当たり前!!)

投稿者 sho : September 8, 2005 04:23 PM


トラックバックやコメントは新しいブログにお願いします