ページの作成や編集にはユーザ登録が必要です。
YouTube の動画を検索して埋め込むプラグイン
- 投稿者: 名無しさん
- カテゴリ: 新規
- 優先度: 普通
- 状態: 提案
- 日時: 2007年12月18日 18時03分03秒
内容
すでに投稿されているYouTube関連のプラグインには以下のようなものがあります。
- BugTrack-plugin/300 YouTube動画を埋め込むプラグイン
- BBS-雑談掲示板/225 ニコニコ動画貼りたい
- BugTrack-plugin/315 YouTube の動画を貼付ける
これらはいずれもVideoのIDを指定するものですが、このIDを調べるのがめんどくさい。そこで、単語から関連するYouTubeの動画が得られるプラグインを作成してみました。
キャッシュ対応 2008/03/29追記
YouTubeでの検索が非常に重いときがあり、同一ページにこのプラグインが複数貼ってあったりすると、ページの表示がなかなかなされないことがありました。そこで、明示的に指定しない限り、検索結果をキャッシュすることにして、従来のようにページ表示のたびに検索に行くのをやめました。これでページの表示が高速化されるものと思います。
このキャッシュ対応にはStorableモジュールを使っています。StorableはPerl5.8.0から標準モジュールとなっていますので何もしなくても使えますが、それ以前のバージョンでは別途インストールする必要があります。ご注意ください。
埋め込み無効対応
通常、検索結果として得られた動画は、プラグインが記載されているページ内で再生する埋め込み動画として取り扱いますが、「リクエストによる埋め込み無効」が指定されている場合には、サムネイル画像およびその動画のYouTubeのページへのリンクを表示するようにしました。
使い方
{{youtubesearch ここに検索語を記す,300,250,5,off}}
- 検索語には複数の単語を与えることが可能です(単語の間は半角スペース)。
- 検索語の次の「300」「250」は表示する画像の幅、高さを示します。省略するとそれぞれ、「425」「355」になります。
- 次の「5」は表示する画像の件数の上限の指定です。省略すると「1」になります。
- 最後の「off」は、キャッシュしないことを明示的に示す指定です。省略したり、off以外を指定した場合には、常にキャッシュを行います。キャッシュを行うと、YouTubeでの検索結果をキャッシュファイルに保存し、プラグインが記載されているページの更新日時がキャッシュファイルよりも新しくなるまではそのキャッシュファイルに保存されている結果を用い、改めて検索を行うことはありません。
上記の記載例はこんな感じになります。
インストール
- 以下のファイルをダウンロードし、./plugin以下にインストールする。
- youtubesearch4.zip(583)
- さらに以下のモジュールを./lib以下にインストールする。
参考および関連情報
- 俺流amazonの作り方
- コードはこの本からのパクリ。ありがとうございます。
- Developer's Guide: The Protocol - YouTube Data API - Google Code
- PerlでYouTubeのGData検索をする
- この記事を見てAPIの利用にデベロッパーIDが必要ないことを知り、このプラグインを作成しました。ありがとうございます。
- BugTrack-plugin/300 YouTube動画を埋め込むプラグイン
- コードの一部をパクリました。ありがとうございます。
コメント
- なぜか昨夜はできていたXMLのパースができなくなっていたので、修正したものをyoutubesearch2.zipとして添付しなおしました。 - (2007年12月19日 07時45分43秒)
- YouTubeの検索結果のキャッシュに対応したものをyoutubesearch3.zipとして添付しなおしました。 - 名無しさん (2008年03月29日 10時17分33秒)
- 「リクエストによる埋め込み無効」に対応したバージョンをyoutubesearch4.zipとして添付しました。 - 名無しさん (2009年01月12日 14時19分36秒)
最終更新時間:2012年02月22日 22時02分50秒