※この記事は6年以上前の記事です。
現在は状況が異なる可能性がありますのでご注意ください。
どうも、まぁまぁ給料貰っておきながら、ネトゲでやばくなってるみやびです。
もう、無駄遣いしすぎ問題。
さて、表記の件なんだけど、ひょんなことでMovable Type(以下MT)をアップデートしたら、ある子ブログのインデックステンプレートの再構築で、
"Can't call method "entry_based" on an undefined value"
ってエラーが出るようになった。
今まで出なかったのに、なんぞこれ?って調べたが、さすがMT、全然情報出てこないのね。
(MT7から、ちょいちょいUI英語になったから余計に)
その中でなんとかエントリーを見つけ出した。
・【Movable Type】アップグレード時に発生したエラーとその解決
どうやら、
<MTCategories>
がダメらしい。
ほんとかよ、と思いつつ、書かれてる通りにやってみるも、案の定変わらず・・・。
と、もっと調べてみると、別のエントリーでは、
<$mt:ArchiveTitle$>
が原因だよ!
と出てきた。
「・・・・・・」
てきとうかよ!!!!!!!!!
そうこのエラー、惑わされてはいけない。
とにかくMT上で値が拾えなかった時に出るエラー
なのだ。
確かに、エラー文をよく見れば、そう書いてるとも見えなくない。
"entry_based"に惑わされず、"undefined value"を見るべきだった。
まぁ、正しい記事が見つからないのもしょうがない。
このMovable TypeというCMS、再構築時のエラーで、どこでどの行がとか詳しく出てこない。
エラーには死ぬほど不親切なのだ。
当サイトでのエラーは、探しに探して、やっと見つけたのは、
<MTSetVarBlock name="hoge"><$mt:BlogID$></MTSetVarBlock>
であった。
ブログIDがないとか言ってるのだ。
んなわけあるかい!って思いましたが、下記に修正。
<$MTSetVar name="hoge" value="$mt:BlogID"$>
ようやっと再構築できた・・・。
ということで、このエラーが出たら、
テンプレート内、インクルードしているテンプレートなど洗いざらい探すしかない。
コツはというと、洗いざらい一箇所ずつ消して、再構築して、の繰り返ししかない・・・。
(コーディングのエラー探しと同じやり方ね)
もうね、MTさんよ、
ほんとエラーに対して親切になれ!ファイルと行数とか出せよ!!!
他のトラブルもあって、寝たの4時過ぎだよ!
(↑それはおまえが悪い)
他のトラブルってのも、MT上の話なので、それはまた別のエントリーで。
眠いわ。
コメントする