我使用以下内容在帖子中添加YouTube缩略图,并在fancybox中显示视频:
<div><a class="fancybox" href="#video2">
<img src="http://img.youtube.com/vi/dm36W5NTPag/0.jpg" alt="Welcome To High Output" width="220px" height="120px" /></a></div>
<div id="video2" style="display: none;">
<iframe title="YouTube video player" class="youtube-player" type="text/html" width="480" height="390" src="http://www.youtube.com/embed/dm36W5NTPag" frameborder="0"
allowFullScreen></iframe></div>
基本上,短代码必须有一个字段来输入缩略图中的视频ID、视频链接、第一个div的链接和第二个div的ID。
http://img.youtube.com/vi/(HERE)/0.jpg
和http://img.youtube.com/vi/(HERE)/0.jpg
<a class="fancybox" href="#(HERE)">
和<div id="(HERE)" style="display: none;">
因此,短代码应该如下所示:
[youtube VIDEO ID:(Enter ID)]
有人知道怎么做吗?
最合适的回答,由SO网友:onetrickpony 整理而成
add_shortcode(\'youtube\', \'youtube_shortcode\');
function youtube_shortcode($atts){
if(!isset($atts[0])) return;
$id = strip_tags($atts[0]);
ob_start();
?>
<div><a class="fancybox" href="#video_<?php echo $id; ?>">
<img src="http://img.youtube.com/vi/<?php echo $id; ?>/0.jpg" alt="Welcome To High Output" width="220px" height="120px" /></a></div>
<div id="video_<?php echo $id; ?>" style="display: none;">
<iframe title="YouTube video player" class="youtube-player" type="text/html" width="480" height="390" src="http://www.youtube.com/embed/<?php echo $id; ?>" frameborder="0"
allowFullScreen></iframe></div>
<?php
return ob_get_clean();
}
use it like: [youtube "dm36W5NTPag"]