MovableTypeからTwitterへの投稿が成功しました

サイト運営費捻出のため広告を使用しています

Twitter

 今まで使っていたプラグインがTwitterの認証方式変更によりうまく投稿が出来なくなってしまっていました。いろいろ試行錯誤をしているうちにうまく出来ましたので、簡潔に紹介します。

 PostTweetプラグインを使用します

 ☆エムロジック放課後プロジェクト: PostTweet アーカイブ

 マニュアル通りに作業します。

 ☆PostTweetプラグイン

 ・指定された通りのディレクトリにインストールする

 ・Oauth認証をする

 ・投稿済みの記事を未公開にして再度公開にしてみる

 ここでエラーが発生してしまいました。システムログを見てみると下記のエラーが発生しています。

 エラーの内容は下記の通りです。

PostTweet: Twitterへの投稿に失敗しました。(twitterから応答を得られません。(utf8 “\xA5” does not map to Unicode at /usr/local/lib/perl5/5.8.9/mach/Encode.pm line 170. ) )

 どうも文字コードが問題になっているようです。ネット検索をしてみると、下記の記事がヒットしました。

 ☆mattsun.jp_blog mobile ver.

 このブログはEUCで設定されています。ところがプラグインの方はUTF8にしか対応していないようです。

 そこで、上記の記事に書かれている「I18N Helper Plugin」のお世話になります・

 ☆Ogawa::Buzz: I18N Helper Plugin

 こちらをダウンロードしてPluginsディレクトリにインストールしました。

 そして、PostTweetプラグインの「message_format.tmpl」の中身を編集します。

<mt:setvar name=”title_len” value=”140″ />

<mt:setvarblock name=”title”><mtencodeText from=”euc-jp” to=”utf-8″><mt:entrytitle remove_html=”1″ /></mtencodeText></mt:setvarblock>

<mt:setvarblock name=”link”> – <mt:entryshortenedpermalink /></mt:setvarblock>

<mt:setvarblock name=”link_len”><mt:var name=”link” count_characters=”1″ /></mt:setvarblock>

<mt:setvar name=”title_len” op=”-” value=”$link_len” />

<mt:var name=”title” trim_to=”$title_len” /><mt:var name=”link” />

 これでうまくtwitterへ投稿することが出来るようになりました。

コメント