幅広いユーザーにフィットするServersMan@VPS

企画特集 : ServersMan@VPS(ドリーム・トレイン・インターネット)

幅広いユーザーにフィットするServersMan@VPS

CNET Japan Ad Special2010年8月26日 17時21分

■Twitterを活用したWebサイト例

 ServersMan@VPS上で、Twitterを活用したWebサイトを構築してみよう。今回は、Twitterのタイムラインから特定のハッシュタグを検索してきて、それをWebサイト上に表示するというものを考えてみる。顧客に対し自社に関するつぶやきを見せる、あるいは自分の興味ある分野のつぶやきを収集することができるうえ、サイトの更新頻度があがるため、SEO効果も期待できる。

 TwitterのAPIを利用する場合、特定のIDでの投稿や返信の取得にはセキュアなAPI認可の標準手段を提供するプロトコル「OAuth」による認証が必要となるため、少々ハードルが高い。検索結果の取得であれば特に認証は不要なので利用しやすい。

 Twitterのタイムラインを取得し、Webページに表示する方法はいくつかあるが、今回はPHPを利用してみた。ServersMan@VPSならば、もっとも廉価なEntryプランにおいても、ホームページセットを選択することで最新のPHP5が利用できる。単純にTwitterからハッシュタグの検索結果を取得するなら、次のようなスクリプトになる。

<?php
$url = 'http://search.twitter.com/search.json?q=%23serversman';
/* cache.json must be exists and ugo+w */
$cache = 'cache.json';
$refresh = 10;
$stat = stat($cache);
$mtime = $stat['mtime'];
if((time() - $mtime) > $refresh){
if($result = file_get_contents($url)){
file_put_contents($cache, $result, LOCK_EX);
}
} else {
$result = file_get_contents($cache);
}
$decoded = json_decode($result, true);

/* -- output -- */
if($decoded){
print('<div class="twitter" >');
foreach($decoded['results'] as $tweet){
print('<div class="tweet">');
print('<div id="tweet-text">'.$tweet['text'].'</div>');
print('<div id="tweet-source" ><a href=http://twitter.com/'.$tweet['from_user'].'
>'.$tweet['from_user'].'</a></div>');
print('</div>');
}
print('</div>');
}else{
print('fail to parse json');
}

 PHPにはPEARなど有用なライブラリが多いが今回はPHP5の標準関数のみ動作するものを紹介する。実際に利用する際は、取得したタイムラインをキャッシュするため、あらかじめ同じディレクトリにcache.jsonというファイルを作り、httpdによる書き込み権限を与えておく必要がある。

 このようなスクリプトをHTMLに組み込んだり、インラインフレーム内で表示をすることで、WebページにTwitterから特定のハッシュタグによる投稿を取得して、随時表示することができる。レイアウトやデザインはCSSで指定することによって、自由にカスタマイズ可能だ。

(画像クリックで拡大表示)

 同じような表示を可能とするJavaScriptがTwitterからオフィシャルで提供されているが、表示方法が固定されているため、ページのレイアウトが制限されてしまう。せっかく自分でWebサイトを作るのであれば、自由度の高いレイアウトを楽しむとともに、是非デザインセンスをアピールしたいところだ。多くの企業がソーシャルツールに注目し、Twitter上でアカウントを運用している。そこで差別化するためには、適切なソーシャルツールの運用に加えて、自社サイト上での新しい見せ方などのアピールが必要だ。そのためにも今回ご紹介した、PHPなどサーバーサイドで動作するスクリプトを自ら用意することをお薦めしたい。

 ServersMan@VPSではEntryプランからPHPが利用できるので、今回紹介したようなサイトはEntryプランでも構築してみることが可能だ。初期設定時にパッケージセットでホームページセットを選択すれば、PHPの他にApacheやFTP、Perlといった基本的なWebサイト構築のためのアプリケーションが利用できる状況でVPSが提供される。コマンドやFTPによる面倒なインストールは一切不要だ。

 注意が必要なのは、無料IPアドレスの追加や、MySQLやBlueOnyxなどが利用できるエンジニアセットの提供は、Standardプラン以上からになる点だ。公開サーバーを運用する場合、すなわち複数のドメインでSSLを運用したり、さまざまWeb APIを利用したマッシュアップを行ったり、または高度なCMSツールを利用したりする場合などには、Entryプランでは対応が難しい。

 これまで見てきたように、BlueOnyxはVPS運用のハードルを下げてくれる非常に便利なツールであり、またIPアドレスの無料追加も嬉しい機能である。もしもプランの選択に迷うようであれば、機能・リソースに より安心感のあるStandardプラン以上を選択することをお薦めする。

 なお、現在ServersMan@VPSのProプランを申し込むと、DTIのプロバイダー料金が無料になるようだ。

 先着250名なので、こちらも早めに申し込むことをお勧めする。