Movable Type 4.0にして、PostVoxもVersion0.7を入れ心機一転クロスポストするぜ!と調子に乗ってみたものの失敗。開発者カンファレンスで高山さんと知り合ったのでメールでやりとりしつつ、ついにPostVoxプラグインが動きました。
さて、今までうまく動かなかった原因ですが、プラグインの中でエンドポイントをデータベースに保存して使い回しているのですが、どうやら3.3x時代に間違ったエンドポイント保存され、それを使い続けてしまったようです。どうやら正かろうが、間違っていようが最初に取得したエンドポイントが神様になってしまう模様。。。
PostVox.plの下の方に
sub reset_config
という関数がありこれで保存されてしまったデータをクリアできそうな雰囲気ですが、面倒なのでmt_plugindataテーブルの該当レコードを削除してやりました。
データベースなんか直接さわれないっ。て方は、PostVox.plの101行目(ver0,7の場合)の
my $apilink = $config->{vox_apilink};
という一行を
my $apilink = undef;
にしてしまえば、保存されたapilinkは無視され解決するのではないかと。こうするとポストの度にエンドポイントを探しにいくので少々冗長かもしれませんが、エンドポイントはサーバ側で変更されるおそれもあるので毎回取得しにいって良いと思います。
3.3x時代からずっとうまくいっていない方は同件の問題かもしれないのでお試しあれ。