Twitter の日本語版向けサービスとして立ち上がった、twicco は特定の話題を扱うコミュニティを作ることができるサービス。
さっそく私も興味があるところに登録してみました。
で、それに関連する話題をブログにポストしたときに、コミュニティ向けに reply してやれると便利じゃね? と短絡的に考えた結果、またしても Twitpress をちょっとだけカスタマイズしてみました。
具体的な動作は、指定したカテゴリに属するポストがされたとき、指定したコミュニティ宛に reply 用の文字列 @~ を付けてやるという単純なものです。
既存のソースに数行追加するだけの簡単なものなので、ご参考までに。
ソースコード
twitpress.php の関数、twitpress_publish を以下で置き換えます。
//Publishes a tweet given only the postID
function twitpress_publish( $postID ){
//get the post
$post = get_post( $postID );
//Now redundant check to make sure the post has been published
if ( $post->post_status == "publish" ){
//特定のカテゴリに属する投稿はtwicco宛に送る
$twicco_name = array(
//カテゴリーID と 対応するコミュニティを連想配列に格納する
"1" => "@hoge", //カテゴリ ID が 1 のときは @hoge へreply
"2" => "@fuga" //カテゴリ ID が 2 のときは @fuga へreply
);
//カテゴリIDを取得・属するカテゴリの数だけループする
foreach (get_the_category() as $cat) {
//該当するカテゴリ ID が存在した場合 $twicco に指定文字列(reply 先)を追加する
$twicco = $twicco.$twicco_name[$cat->cat_ID]." ";
}
$message = twitpress_get_message( $postID );
//送信メッセージに reply 先を追加する。
$message = $twicco.$message;
twitpress_postMessage( get_option( 'twitpress_uid' ), get_option( 'twitpress_password' ), $message );
}
}
$twicco_name = array() 内に、直接カテゴリ ID とリプライ先の対応を書いてやるというなんとも力業ですが、使えればいいやという気持ちですね。
とりあえず、動くは動いてますが、カテゴリ ID の確認方法が、カテゴリ管理メニューで表示される、各カテゴリの編集用リンクを見るという、これまた力業なのですが、我慢我慢。


コメント