ひとつ前のエントリーで書きましたが、記法は簡単です。次のようになります。
[yt:(ビデオのID):横幅:縦幅]YouTubeなら、yt、Googleビデオならgv、マイクロソフトsoapboxならsbです。縦と横のサイズ(整数)は省略できるので、簡単にしたいなら、ビデオのIDを記述するだけでOKです。具体例で見ていきましょう。
[yt:hEYHvLnVcnQ::]と記述すると(任天堂ゼルダ曲のピアノ演奏、再生すると音が出ますよ)、
[gv:-5379890076544103730::]と記述すると(任天堂マリオ曲のピアノ演奏)、[gv:-5379890076544103730::]最後に、マイクロソフトのSoapbox。
[sb:022cb97f-95f8-403a-9c1b-5032c70de2e1::]と記述すると(任天堂Wiiのゼルダデモ映像)[sb:022cb97f-95f8-403a-9c1b-5032c70de2e1::]
こんな感じです。簡単ですね。この記法のために、スタイルシート用ですが video-linkというクラス名を出力するようにしました。このbasicのテーマの場合は、basic.cssにて次のように指定しています。
/*--------------[ 外部動画 ]-------------*/ .video-link { width: 425px; margin: auto; z-index:1; }
とりあえず、代表的な3つのビデオサイト向け記法を用意しましたが、utils.phpのソースを見れば分かるように、今後いくらでも追加できるようにしています。この手のは、たいていFlashを用いていますから。ちなみに、utils.phpの該当部分は以下のようになっています。配列なので、FLASH系なら、いくらでも追加できると思います。
// 外部動画リンク表示処理 (YouTube, Google Video, SoapBox MSN, and so on...) if(preg_match_all('{¥[(yt|gv|sb):([0-9a-z¥-]+?):(¥d+?|):(¥d+?|)¥]}i', $com, $movlinks)){ $length = count($movlinks[0]); $embeds = array( # src, type, others, width/height 'yt' => array('http://www.youtube.com/v/', 'application/x-shockwave-flash', '', '425,350'), 'gv' => array('http://video.google.com/googleplayer.swf?docId=', 'application/x-shockwave-flash', 'id="VideoPlayback"', '400,300'), 'sb' => array('http://images.soapbox.msn.com/flash/soapbox1_1.swf?v=', 'application/x-shockwave-flash', 'wmode="transparent" name="msn_soapbox" flashvars="c=v&v=SB_MOV_ID"', '412,362'), // ); for($i=0; $i<$length; $i++){ $_mv = NL.'<div class="video-link">'.NL; $tar = $embeds[$movlinks[1][$i]]; list($def_w, $def_h) = explode(',', $tar[3]); $w = $movlinks[3][$i]=='' ? $def_w : $movlinks[3][$i]; $h = ($h=$movlinks[4][$i])=='' ? ($movlinks[3][$i]=='' ? $def_h : ceil($w * .75)) : $h; $_mv .= ' <object style="width:'.$w.'px; height:'.$h.'px;"> <param name="movie" value="'.$tar[0].$movlinks[2][$i].'"></param> <embed src="'.$tar[0].$movlinks[2][$i].'" type="'.$tar[1].'" '.str_replace('SB_MOV_ID', $movlinks[2][$i], $tar[2]).' width="'.$w.'" height="'.$h.'"></embed> </object>'; $_mv .= NL.'</div>'.NL; $com = str_replace($movlinks[0][$i], $_mv, $com); } }
この記事に対するコメント・トラックバック [4件]
3. あゆ — 2006/10/27@00:53:42
4. ハローワーク秋田求人情報案内
— 2007/04/19@19:53:27
続き »