最近ツイートをサイトに埋め込む方法を探していたので、その過程で見つけた手法から使い勝手が良さそうな物を紹介します。各サンプルも用意しました。
・Twitter ウィジェット
・Juitter
(Juitterを現在使えるようにする方法もまとめました)
・jTweetsAnywhere
■Twitter ウィジェット
公式に提供されている方法です。あらゆるサイトで見かけますね。特に事情が無い限りこれを選べば良いでしょう。
サンプル
特徴
・非常にシンプル
・指定できるのは、自分のツイート、キーワードの検索結果、自分のお気に入り、自分のリスト
・表示は自動更新されます
・色、サイズ、表示するツイート数、スクロールバーの有無などの設定が可能で簡単
・表示項目のカスタマイズはできない
■Juitter
シンプルで、表示の更新頻度などのカスタマイズも容易。jQuery Pluginとして動作し、MIT Licenseが採用されています。カスタマイズしつつサイトに埋め込みたい場合、非常に使い勝手が良いです。。
サンプル
特徴
・検索にのみ対応
・表示は自動更新されます
・表示更新時間、フィルター、などの設定が可能
・動作させる為にjsファイルに少し修正が必要
・jsやCSSを書き換える事で、デザインの変更が可能
なお、現在のtwitter仕様や日本語検索に対応するため、以下の修正が必要です。(情報がまとまってなかったので今回ここにまとめました。詳しい検証は行っていません。)
・status IDの修正
2010年末にtwitterの仕様変更があった事に対応する為、status IDを[id(float型)]から[id_str(string型)]に変更する必要がある。(なおこの件に関しては、例えばこちらやこちらがわかりやすい。
jquery.juitter.jsの120行目付近
var link = "http://twitter.com/"+item.from_user+"/status/"+item.id;を
var link = "http://twitter.com/"+item.from_user+"/status/"+item.id_str;
に修正します。
・ハッシュタグへの対応
ハッシュタグを検索する場合、「#」は「%23」にしておく必要があります。
jquery.juitter.jsの40行目を
param=opt.searchObject;から
param=escape(opt.searchObject);
にすれば良さそうです。
・日本向けの時刻表時
時刻表示を、UTCからJSTへ対応させます。例えばこちらやこちらで紹介されている変更を加えて下さい。
・system.jsを適宜設定する
各種設定がここで可能です。4行目の検索ワードを指定しましょう。それ以外に例えば9行目の検索の言語設定をjaに、10行目の自動更新間隔を適当に、18行目のフィルターも適当に。この辺りの説明はファイルに書いてあるので、読みながら修正しましょう。
・CSSの適用
Juitterのサイトの「Juitter website source code」から入手できるCSSを書き直すのが良いでしょう。その場合、「#juitterContainer .twittLI{}」の「height:55px;」を消しておくと、高さが自動で調整されます(元のプログラムは英語が表示される前提で調整がされているのでずれる)。
■jTweetsAnywhere
機能が豊富で、@anywhereにも対応しているのが特徴です。サイトにきちんとtwitterの機能を盛り込む事も可能でしょう。
サンプル(@Anywhereが動かないのは原因不明です)
特徴
・ユーザー、リスト、検索結果を表示できる
・その他何がどのように表示されるかは、デモを見て下さい。
・@anywhereに対応(オプションです)
・Reply,Retweet,Favoriteメニューも表示されます。
・ドキュメントもしっかりしている。
・表示のカスタマイズも可能
なお、@anywhereを利用する時には、dev.twitterのサイトでアプリを作成した後、Application typeをRead and Writeに変更し、@Anywhere domain
にドメインを登録するのを忘れないようにしましょう。