久々にMovable Typeネタです。
。。と言うかエントリ自体が久々ですね(x_x)☆\バキッ!!
っちゅーボケはさておき・・・(^^;;;。
ゆうべ、トラックバックスパムがあったので、Movable Typeの管理画面から削除しようと思ったら
該当のトラックバックに「削除チェックボックス」が表示されていなかったんですよ。
で、PhpMyAdmin(以下、PMA)にログインして、mt_trackbackテーブルから、該当のトラックバックを1件削除したところ、管理画面のメニューから「トラックバック」をクリックすると、以下のエラーメッセージが出て、一覧が表示できなくなってしまいました(泣。
Can't call method "entry_id" without a package or object reference at /virtual/自分のXreaID/public_html/mt設置ディレクトリ/lib/MT/App/CMS.pm line 2218.
あれー?( ̄▽ ̄;;
前もこの方法でトラバスパムを削除した記憶があったんだけどなー?えーん。
おまけに間抜けにもバックアップもとっていなかったので、その後はぐぐって見たり、レンタルサーバーのサポート掲示板を見たりしながら、以下のことをやってみました。
<試したこと>
1.管理画面にて、該当のエントリを削除
2.PMA にて、mt_placement の 復旧・最適化
3.PMA にて、mt_entry の 復旧・最適化
4.PMA にて、mt_trackback の 復旧・最適化
5.PMA にて、mt_trackback 全データ削除
6.PMA にて、mt_trackback の 復旧・最適化
7.他Blogより、新しくトラックバックを送信(トラックバック自体は成功)
8.PMA にて、mt_trackback を 削除
その後、エクスポートしておいたSQLで 再度 mt_trackback を作成
(順番は、前後するかも知れません。また、テーブルの復旧・最適化は何度か繰り返していると思います。)
が!現象は改善されず(号泣。
PHP分からんなりに、CMS.pmの該当箇所もチェックしてみましたよ。ココですな。
mt_trackbackをロードして、entry_idをキーにmt_entryをロードしてるの?
そこでmt_entryに該当のentry_idがないからエラーになってるの?
と、なんとなーくそんな気がするまで約3時間かかりましたよ^^;;;。よよよ。疲れた・・・。
とりあえず、エントリの新規・修正登録など、「トラックバック」以外の機能は普通に使用できているので一旦、レンタルサーバーのサポート掲示板に質問投げておきました。解答があるといいなー。くっすん。