Noël Café : Blog

Noëlの公開備忘録とひとりごと。コメント・トラックバックご自由に

MTからhatena Diaryへ同時投稿

前のエントリーlivedoor blogに投稿できるように仕込みましたが、
その続きで今回はhatena Diaryでの投稿を試みます。


hatenaSyncというPluginを使用します。
MovableTypeで投稿した記事のリンクをはてなダイアリーに投稿するプラグイン
from Open MagicVox.net
よりhatenaSyncをダウンロード。
mtのpluginフォルダにぶち込む。
MTの[システムメニュー] → [プラグイン] で動くことを確認。


あれれれれ?
(lolipop, MT3.36, hatenaSync0.01の状態)

Can’t locate loadable object for module DateTime in @INC
(@INC contains:
/・・・/mt/plugins/MTTagInvoke/lib
/・・・/mt/extlib lib
/usr/lib/perl5/5.8.8/i686-linux-thread-multi
/usr/lib/perl5/5.8.8
/usr/lib/perl5/site_perl/5.8.8/i686-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.8
/usr/lib/perl5/site_perl/5.8.0
/usr/lib/perl5/site_perl .)
at ・・・/mt/extlib/DateTime.pm line 44
BEGIN failed–compilation aborted at /・・・/mt/extlib/DateTime.pm line 44.
Compilation failed in require at /・・・/mt/extlib/XML/Atom/Client.pm line 14.
BEGIN failed–compilation aborted at /・・・/mt/extlib/XML/Atom/Client.pm line 14.
Compilation failed in require at /・・・/mt/plugins/hatenaSync/hatenaSync.pl line 6.
BEGIN failed–compilation aborted at /・・・/mt/plugins/hatenaSync/hatenaSync.pl line 6. Compilation failed in require at lib/MT.pm line 619.

困りつつも、ぐーぐる。
発見!どうやら、PerlのModuleのDateTimeが古いようだ。
CPANのサイトより最新のDateTimeをとってくる。
http://search.cpan.org/perldoc?DateTime
私が今回ダウンロードしたのは、DateTime-0.4501.tar.gz
適当なソフトを使用して解凍する。
(ちなみに、私は古いけど、Lahplusが好きなのでコイツを使用。Vistaでも使えた)
解凍したファイルのlibフォルダに入っている

DateTime/
DateTime.pm
DateTimePP.pm
DateTimePPExtra.pm

をmt/extlibフォルダへ突っ込む。
再度プラグインが認識されているかを見てみるが・・・
ありゃ~

DateTime::Locale version 0.4 required
–this is only version 0.09 at /・・・/mt/extlib/DateTime.pm line 46.
BEGIN failed–compilation aborted at /・・・/mt/extlib/DateTime.pm line 46.
Compilation failed in require at /・・・/mt/extlib/XML/Atom/Client.pm line 14.
BEGIN failed–compilation aborted at /・・・/mt/extlib/XML/Atom/Client.pm line 14.
Compilation failed in require at /・・・/mt/plugins/hatenaSync/hatenaSync.pl line 6.
BEGIN failed–compilation aborted at /・・・/mt/plugins/hatenaSync/hatenaSync.pl line 6.
Compilation failed in require at lib/MT.pm line 619.

バージョンの問題??というより、
ファイルを上書きしただけではどうにもならないのね。
大体Lolipop自体にはDateTime入っていないようだし。
あきらめて、元のファイルに戻しました・・・。


次の手は、Pure Perlを使用したもの。
モジュールがインストールができない環境でも使えるらしい。
いつでもどこでも、すぐに DateTime モジュールを使いたい
from iandeth.
DateTimePackの中身をmt/plugin/hatenaSyncにアップロード
一応、DateTimePackのDateTimeのバージョンが古かったので
先ほどダウンロードした0.4を入れてみた。
hatenaSync.plの use XML::Atom::Client; の下に以下を記入

use lib ‘./lib’;
use DateTime;

で、出力エラーは

DateTime::Locale version 0.4 required
–this is only version 0.22 at /・・・/mt/plugins/hatenaSync/lib/DateTime.pm line 46.
・・・

う~む。
さっきの0.09と今回の0.22って何だろう??
要は、DateTimeを最新にしてはいけないのね!
DateTimePackに入っていたlibファイルに置き換えて再度実行。
今度はエラー出ませんでした
☆


(livedoorSyncと同じだが・・・)
Hatena Diaryに投稿させたいBlogの[設定] → [プラグイン]
より[hatenaSync]の[設定]を開く。
(文字が">しか出ていないが、)
テキストボックスに
左 : hatenaID, 右 : パスワード
を入力をして、[設定を保存]


うまくできるかしら~?
Noel Cafe @ Hatena


2009.2.23 追記
やってみたら失敗
MTシステムのログに出力されたエラー

「hatenaSync」は、次の理由で使えません:
Can’t locate object method "id" via package "MT::Plugin::OMV::hatenaSync"
at /・・・/mt/plugins/hatenaSync/hatenaSync.pl line 96.

livedoorSyncの時と同じです。
MT3.36だからかな・・・。
なんだかあきらめてMT4.2を入れるつもりになってきた。


Reference :
AddToHatenaBookmark PluginCommentsAdd Star from Ogawa::Memoranda (コメント部分)
AddToHatenaBookmarkプラグインを入れてみた from Kazuの挑戦日記
DateTimeモジュールをインストールする。
from Perl入門~サンプルコードによるPerl入門~


そういえば、オガワさんのページトラックバックURLが見当たらず。あれれれれ?
そして、今サブパソコン(KOJINSHA SX)を使用しているのだが、
Vistaのためあまりソフトを入れないようにしていたのだけれども、
DateTimeのアップ作業で仕方なくFTPソフト(FFFTP)入れましたわ・・・。

Leave a Reply

*


CAPTCHA



Trackback URL