tweetDance.jsをバージョンアップ

当ブログで公開中のtweetDance.jsがTwitterAPI1.0の停止に伴い動かなくなったのを修正しました。手軽に導入できるのが大きな特徴だったtweetDanceでしたが、TwitterAPI1.1のOAuth化のため、PHPにてAPIにアクセスする必要がでてきました。

そのためtweetDance1.1の導入には、jQueryプラグインに加えPHPスクリプトの設置が必要になります。

スポンサーリンク

 

追加するPHPの役割

今までは認証なしに利用できたTwitterAPIですが、1.1からは利用元が特定できるOAuthになりました。それに加え、15分に180回という利用制限も加わりました。 今までのようにページ読み込みの度にアクセスすると状況によっては利用制限に引っかかる事になります。

そのため、今回新しく追加するPHPスクリプトでは、

  • OAuth認証
  • キャッシュ処理
  • API最短間隔を待つ

などを行います。jquery.tweetdance.jsからは、TwitterAPIの代わりに新しく設置するPHPスクリプトにアクセスします。

 

1. OAuthに必要なキーとトークンを取得

キーとトークンの取得にはTwitterへの登録が必要になります。これにより誰がどの程度APIを利用しているかTwitterから把握できる事になります。登録の流れは小粋空間さんの記事が分かりやすいです。

TwitterのAPI 1.1で取得したユーザーのJSONデータからAtomフィードを作成する: 小粋空間

 

2. PHPのOAuth認証ライブラリのダウンロード

上の小粋空間さんの記事にもありますが、abrahamのtwitteroauthライブラリをダウンロードします。

abraham/twitteroauth · GitHub

ファイルを解凍後、以下の2つのファイルのみ必要になります。

  • twitteroauth/OAuth.php
  • twitteroauth/twitteroauth.php

tweetdanceフォルダを作成し、その中にtwitteroauthフォルダをコピーして下さい。

 

3. twittersearch.phpを作成

tweetdanceフォルダ内にtwittersearch.phpを作成します。

twittersearch.php
twittersearch.php

設定必須の5箇所を埋めて下さい。次にキャッシュファイルの保存先として、tweetdanceフォルダ内にcacheフォルダを作成してください。

 

4. twittersearch.phpの設置

PHPが動作する適当な場所にtweetdanceをアップロードします。その後、テストの為にブラウザからアクセスしてみて下さい。エラーではなくjsonが取得できれば成功です。テストが終了したらtwittersearch.phpの先頭のdefineのDEBUGを0にして下さい。

エラーが出ている場合、twittersearch.phpは、キャッシュ処理にPearのCache_Liteライブラリを使います。 また、最終APIアクセス日時の記録の為にテキストファイルを作成します。 よってPearライブラリの存在やファイル作成権限なども疑いましょう。

 

5. jQueryプラグイン jquery.tweetdance.js の設置

新しいjquery.tweetdance.jsの1.1を設置します。

tweetDance1.1
jquery.tweetdance.js

JSにも変更が必要な箇所が1箇所あります。先頭の

var twitter = 'http://plusblog.jp/tweetdance/twittersearch.php'; // ! You must change here. !

を、自分が設置したtwittersearch.phpに変更すれば設置終了です。

 

 

スポンサーリンク