30 lines
1.4 KiB
PHP
30 lines
1.4 KiB
PHP
|
<?php
|
||
|
|
||
|
/**
|
||
|
* google video is replaced by youtube, but its embeds will probably continue working indefinitely.
|
||
|
* [googlevideo=http://video.google.com/googleplayer.swf?docId=-6006084025483872237]
|
||
|
*/
|
||
|
|
||
|
function googlevideo_shortcode( $atts ) {
|
||
|
if ( !isset( $atts[0] ) )
|
||
|
return '';
|
||
|
|
||
|
$src = ltrim( $atts[0], '=' );
|
||
|
|
||
|
if ( 0 !== strpos( $src, 'http://video.google.com/googleplayer.swf' ) ) {
|
||
|
if ( !preg_match( '|^http://(video\.google\.[a-z]{2,3}(?:.[a-z]{2})?)/|', $src ) || !preg_match( '|.*docid=([0-9-]+).*|i', $src, $match ) || !is_numeric( $match[1] ) )
|
||
|
return '<!--Google Video Error: bad URL entered-->';
|
||
|
|
||
|
$src = 'http://video.google.com/googleplayer.swf?docId=' . $match[1];
|
||
|
}
|
||
|
|
||
|
// default width should be 400 unless the theme's content width is smaller than that
|
||
|
global $content_width;
|
||
|
$default_width = intval( !empty( $content_width ) ? min( $content_width, 400 ) : 400 );
|
||
|
$height = intval( 0.825 * $default_width );
|
||
|
$src = esc_attr( $src );
|
||
|
|
||
|
return "<span style='text-align:center;display:block;'><object width='{$default_width}' height='{$height}' type='application/x-shockwave-flash' data='{$src}'><param name='allowScriptAccess' value='never' /><param name='movie' value='$src'/><param name='quality' value='best'/><param name='bgcolor' value='#ffffff' /><param name='scale' value='noScale' /><param name='wmode' value='opaque' /></object></span>";
|
||
|
}
|
||
|
add_shortcode( 'googlevideo', 'googlevideo_shortcode' );
|