PluginProbe
iframe / 2.3
iframe v2.3
trunk 1.0.0 1.1.0 1.2.0 1.3.0 1.4.0 1.5.0 1.6.0 1.7 1.8 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3.0 4.0 4.1 4.2 4.3 All 35 releases
iframe / iframe.php

iframe.php in iframe 2.3, at iframe.php

93 lines 2.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /*
3 Plugin Name: iframe
4 Plugin URI: http://web-profile.com.ua/wordpress/plugins/iframe/
5 Description: [iframe src="http://player.vimeo.com/video/819138" width="100%" height="480"] shortcode
6 Version: 2.3
7 Author: webvitaly
8 Author URI: http://web-profile.com.ua/wordpress/
9 License: GPLv2 or later
10 */
11
12 if ( !function_exists( 'iframe_embed_shortcode' ) ) :
13
14 function iframe_enqueue_script() {
15 wp_enqueue_script( 'jquery' );
16 }
17 add_action('wp_enqueue_scripts', 'iframe_enqueue_script');
18
19 function iframe_embed_shortcode($atts, $content = null) {
20 $defaults = array(
21 'src' => 'http://player.vimeo.com/video/819138',
22 'width' => '100%',
23 'height' => '480',
24 'scrolling' => 'no',
25 'class' => 'iframe-class',
26 'frameborder' => '0'
27 );
28
29 foreach ($defaults as $default => $value) { // add defaults
30 if (!@array_key_exists($default, $atts)) { // hide warning with "@" when no params at all
31 $atts[$default] = $value;
32 }
33 }
34
35 $src_cut = substr($atts["src"], 0, 35); // special case maps
36 if(strpos($src_cut, 'maps.google' )){
37 $atts["src"] .= '&output=embed';
38 }
39 $html = '';
40 if( isset( $atts["same_height_as"] ) ){
41 $same_height_as = $atts["same_height_as"];
42 }else{
43 $same_height_as = '';
44 }
45
46 if( $same_height_as != '' ){
47 $atts["same_height_as"] = '';
48 if( $same_height_as != 'content' ){ // we are setting the height of the iframe like as target element
49 if( $same_height_as == 'document' || $same_height_as == 'window' ){ // remove quotes for window or document selectors
50 $target_selector = $same_height_as;
51 }else{
52 $target_selector = '"' . $same_height_as . '"';
53 }
54 $html .= '
55 <script>
56 jQuery(document).ready(function($) {
57 var target_height = $(' . $target_selector . ').height();
58 $("iframe.' . $atts["class"] . '").height(target_height);
59 //alert(target_height);
60 });
61 </script>
62 ';
63 }else{ // set the actual height of the iframe (show all content of the iframe without scroll)
64 $html .= '
65 <script>
66 jQuery(document).ready(function($) {
67 $("iframe.' . $atts["class"] . '").bind("load", function() {
68 var embed_height = $(this).contents().find("body").height();
69 $(this).height(embed_height);
70 });
71 });
72 </script>
73 ';
74 }
75 }
76 $html .= "\n".'<!-- iframe plugin v:2.3 - wordpress.org/extend/plugins/iframe/ -->'."\n";
77 $html .= '<iframe';
78 foreach ($atts as $attr => $value) {
79 if( $attr != 'same_height_as' ){ // remove some attributes
80 if( $value != '' ) { // adding all attributes
81 $html .= ' ' . $attr . '="' . $value . '"';
82 } else { // adding empty attributes
83 $html .= ' ' . $attr;
84 }
85 }
86 }
87 $html .= '></iframe>';
88 return $html;
89 }
90 add_shortcode('iframe', 'iframe_embed_shortcode');
91
92 endif;
93