前回のエントリ、YouTubeAPIを叩く…からの続き。

■ はてなブックマーク→MovableTypeに組み込む

hbm.plは当たり前ですがPerlで書かれてるので、
上のサブルーチンを追加すれば、サムネイルを取得するのも可能です。
ページ側でPHP処理しようかなーとも思ったけど、

1) 動的処理だと重くなりそう
2) テンプレにPHP書くのはなんだか違う

ってことで、urlがYouTubeのときに、
サムネイルのURIを取得するように加工してみました。

拡張しまくっちゃってるので、『何行目』っていう表現ができませんが…
デフォルトで言うと多分85行目くらいのところに、次のモノを追加。

my $thumbnail;
if($entry->link->href =~ /^http:\/\/www.youtube.com\/watch\?v=(.+)/){
  my $video_details = get_details($1);
  $thumbnail = "<div class=\"thumbnail\"><img src=\"";
  $thumbnail .= $video_details->{thumbnail_url};
  $thumbnail .= "\" /></div>";
}

簡単に言えば、URIからVideoIDを取得して、
それを関数に入れて、video情報を抜き出して、その中のサムネイルURIを変数に格納して、
その後、テンプレートに渡す変数として、
格納してやる、と。

my @tmpl_entry = (
  {
    title => $entry->title,
    url => $entry->link->href,
    summary => $summary,
    tag => $tag,
    thumnail => $thumnail,
  }
);

当然これだと、テンプレの変更も必要になりますが。
まぁ適当な場所に、入れてあげてくださいませ。


で、CSSを(結構苦労して)調整したあとの出来が、これ。

NOBODY:PLACE - MUTTER: Hatena::Bookmark::konaze (2006-09-28)


うーん…普通だなぁ(笑)
思ったより、全然インパクトなく。
デザインの問題かしら。

うーむ。