YouTube ブロックを iFrame に

2011年7月29日 at 1:51

YouTube では、現在 iFrame をサポートしていますが concrete5 では object のままです。
ですので、以下のようにすると iFrame になります。


テキストファイル

/blocks/youtube/view.php

を新規作成し、以下のコードをそのまま貼り付けてください。

また「$vWidth」「$vHeight」は、横幅と縦幅の値です。ご自分のサイトに合わせて替えてください。

<?php
defined('C5_EXECUTE') or die("Access Denied.");
$url = parse_url($videoURL);
parse_str($url['query'], $query);
$c = Page::getCurrentPage();

$vWidth=640; // Video Width
$vHeight=390; // Video Height

if ($c->isEditMode()) { ?>
<div class="ccm-edit-mode-disabled-item" style="width:<?php echo $vWidth; ?>px; height:<?php echo $vHeight; ?>px;">
<div style="padding:8px 0px; padding-top: <?php echo round($vHeight/2)-10; ?>px;"><?php echo t('Content disabled in edit mode.'); ?></div>
</div>

<?php } else { ?>
<iframe width="<?php echo $vWidth;?>" height="<?php echo $vHeight;?>" src="http://www.youtube.com/embed/<?php echo $query['v']?>" frameborder="0" allowfullscreen></iframe>
<?php } ?>