PR(記事内にアフィリエイト広告が含まれています)
スポンサーリンク
Nucleus

NP_TwitterLt

http://uemura.kir.jp/spispo.php?itemid=2409
Nucleus で記事を新規投稿したときに、特定のカテゴリだった場合は自動的に Twitter へポストしてくれるプラグインです。
注意点その1
UTF-8用なので、EUC環境で使いたい場合は文字コードを変更して保存してからプラグインファイルをアップロードする必要があります。そうしない場合、とりあえず管理画面が文字化けするのですぐわかると思います。
注意点その2
UTF-8用なので、EUC環境で使うと Twitter 上で文字化けします。ました。フォーラムのこの記事を参考にソース変更して対応しました。
注意点その3
管理画面のカテゴリが空白だともちろん動作しませんので、全カテゴリを対象としたい時は全て記載する必要があります。nucleus_category テーブルを開いて、カテゴリだけ抜き出したりしたら、設定も少しは楽できるかと思います。
注意点その4
記事タイトル、記事本文、記事URLをポストしてくれるのですが、URL直前までの文字数によっては文字化けしてしまいます。個人的には記事タイトル、記事本文は不要かな、と思ったので下記の改造をしました。

NP_TwitterLt 119行目あたり
$curl = mb_strlen($url);
//2010/04/11_takehana_add_s
$content = '更新通知:'.$bloginfo['name'];
//2010/04/11_takehana_add_e
$ccontent =mb_strlen($content);

更新通知:→C↓C←C↑C http://www.takehana.tv/cccc/?itemid=2448
といった感じにポストされます。


2010/04/18追記
未来時間への投稿でもポストしてしまう問題があったので、下記の修正を行いました。

 if(array_search($itemnow['catid'],$catids) === FALSE){
//なにもしない
}else{
if($itemnow['draft']==0){
   //2010/04/18 takehana_add1
if($itemnow['iposted']==1){
//Twitterに投稿する
$this->PostItemToTwitter($itemidnow,$this->getOption('username'),$this->getOption('password'));
    //2010/04/18 takehana_add1
}
}
}

ただし、未来時間に到達したとしてもポストされるわけではないです。なぜなら、このプラグインは PostAddItem イベントの時にしか動作しないからです。つまりこのプラグインは、ドラフト投稿や予約投稿をしない、という前提で使うのであれば有用だと思います。
こういう問題があるユーザの場合、少しタイムラグはあるかもしれませんが、RSSからTwitterへ自動ポストするような仕組みを採用した方が安全な気がします。

コメント

タイトルとURLをコピーしました