Version Description
Download this release
Release Info
Developer | embedplus |
Plugin | YouTube |
Version | 10.1 |
Comparing to | |
See all releases |
Code changes from version 10.0 to 10.1
- readme.txt +7 -3
- scripts/ytprefs.min.js +6 -1
- youtube.php +130 -26
readme.txt
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
=== YouTube ===
|
2 |
Contributors: embedplus
|
3 |
Plugin Name: YouTube Embed
|
4 |
-
Tags: accessibility, analytics, api, blocked youtube videos, cache, caching, channel, deleted youtube videos, effects, embed youtube, embedding youtube, featured image, get_locale, i18n, internationalization, l10n, language, lazy, lazy load, load, locale, localization, mobile, mute, no-cookie, oembed, page load, page speed, playlist, playlists, plugin, Reddit, responsive, rich snippets, origin, screen reader, secure, security, seo, short code, shortcode, sidebar, special effects, ssl, subtitles, thumbnail, thumbnail image, thumbnails, TinyMCE, translate, translator, video, video analytics, video plugin, video seo, video shortcode, video thumbnails, view count, volume, widget, wordpress security, wordpress youtube embed, xss, youtube, youtube api, youtube analytics, youtube embed, youtube impressions, youtube player, youtube playlist, youtube plugin, youtube shortcode, youtube snippets, youtube takedowns, youtube thumbnails
|
5 |
Requires at least: 3.1
|
6 |
Tested up to: 4.2
|
7 |
-
Stable tag: 10.
|
8 |
License: GPLv3 or later
|
9 |
|
10 |
YouTube embed plugin. Embed responsive YouTube video players & playlists in posts & widgets. Add video thumbnails, analytics, SEO, caching...
|
@@ -24,7 +24,8 @@ YouTube embed plugin. Embed responsive YouTube video players & playlists in post
|
|
24 |
* "At a Glance" direct access to your YouTube posts/pages
|
25 |
* Shortcode support for [embedding multiple videos on one line >>](https://www.youtube.com/watch?v=KU6lzcNR1FI)
|
26 |
* [General playlist embedding support >>](https://www.youtube.com/watch?v=J50PlRZHH9I)
|
27 |
-
* [Default HTML5 YouTube player support>>](http://www.embedplus.com/make-sure-youtube-defaults-to-html5-on-wordpress.aspx)
|
|
|
28 |
|
29 |
You can even extend the plugin with PRO features like:
|
30 |
|
@@ -139,6 +140,9 @@ You can also start and end each individual video at particular times. Like the a
|
|
139 |
|
140 |
== Changelog ==
|
141 |
|
|
|
|
|
|
|
142 |
= YouTube Embed 10.0 =
|
143 |
This update includes improved tips (Free and Pro) and adds caching to the Pro version for faster page loading.
|
144 |
|
1 |
=== YouTube ===
|
2 |
Contributors: embedplus
|
3 |
Plugin Name: YouTube Embed
|
4 |
+
Tags: accessibility, analytics, api, blocked youtube videos, cache, caching, channel, deleted youtube videos, effects, embed youtube, embedding youtube, featured image, get_locale, i18n, internationalization, l10n, language, lazy, lazy load, load, locale, localization, mobile, mute, no-cookie, oembed, page load, page speed, playlist, playlists, plugin, Reddit, responsive, rich snippets, origin, screen reader, secure, security, seo, short code, shortcode, sidebar, special effects, ssl, subtitles, thumbnail, thumbnail image, thumbnails, TinyMCE, translate, translator, video, video analytics, video plugin, video seo, video shortcode, video thumbnails, view count, volume, widget, wordpress security, wordpress youtube embed, xss, youtube, youtube api, youtube analytics, youtube embed, youtube impressions, youtube player, youtube playlist, youtube plugin, youtube shortcode, youtube snippets, youtube takedowns, youtube thumbnails, youtube plugin migration
|
5 |
Requires at least: 3.1
|
6 |
Tested up to: 4.2
|
7 |
+
Stable tag: 10.1
|
8 |
License: GPLv3 or later
|
9 |
|
10 |
YouTube embed plugin. Embed responsive YouTube video players & playlists in posts & widgets. Add video thumbnails, analytics, SEO, caching...
|
24 |
* "At a Glance" direct access to your YouTube posts/pages
|
25 |
* Shortcode support for [embedding multiple videos on one line >>](https://www.youtube.com/watch?v=KU6lzcNR1FI)
|
26 |
* [General playlist embedding support >>](https://www.youtube.com/watch?v=J50PlRZHH9I)
|
27 |
+
* [Default HTML5 YouTube player support >>](http://www.embedplus.com/make-sure-youtube-defaults-to-html5-on-wordpress.aspx)
|
28 |
+
* YouTube plugin migration support
|
29 |
|
30 |
You can even extend the plugin with PRO features like:
|
31 |
|
140 |
|
141 |
== Changelog ==
|
142 |
|
143 |
+
= YouTube Embed 10.1 =
|
144 |
+
Adds the ability to automatically migrate from another plugin's shortcode. Caching feature now allows lifetime settings. Improved compatibility with other plugins using the YouTube API.
|
145 |
+
|
146 |
= YouTube Embed 10.0 =
|
147 |
This update includes improved tips (Free and Pro) and adds caching to the Pro version for faster page loading.
|
148 |
|
scripts/ytprefs.min.js
CHANGED
@@ -1 +1,6 @@
|
|
1 |
-
|
|
|
|
|
|
|
|
|
|
1 |
+
(function(c){document.querySelectorAll||(document.querySelectorAll=function(a){var b=document,f=b.documentElement.firstChild,e=b.createElement("STYLE");f.appendChild(e);b.__qsaels=[];e.styleSheet.cssText=a+"{x:expression(document.__qsaels.push(this))}";c.scrollBy(0,0);return b.__qsaels});"undefined"===typeof c._EPADashboard_&&(c._EPADashboard_={initStarted:!1,checkCount:0,onPlayerReady:function(a){try{if("undefined"!==typeof epdovol&&epdovol){var b=parseInt(a.target.getIframe().getAttribute("data-vol"));
|
2 |
+
isNaN(b)||(0===b?a.target.mute():(a.target.isMuted()&&a.target.unMute(),a.target.setVolume(b)))}}catch(c){}setTimeout(function(){try{var b=_EPADashboard_.justid(a.target.getVideoUrl());_EPADashboard_.jp("ytid="+b)}catch(c){}},1700)},onPlayerStateChange:function(a){var b=a.target.getIframe();if(a.data===YT.PlayerState.PLAYING&&!0!==a.target.ponce&&-1===b.src.indexOf("autoplay=1")){a.target.ponce=!0;try{var c=_EPADashboard_.justid(a.target.getVideoUrl());_EPADashboard_.jp("ytid="+c+"&p=1")}catch(d){}}},
|
3 |
+
justid:function(a){return/[\?&]v=([^&#]*)/.exec(a)[1]},dynsetupevents:function(){"undefined"===typeof this.epytsetupdone&&_EPADashboard_.setupevents(this.id)},setupevents:function(a){_EPADashboard_.log("Setting up YT API events");YT.loaded&&(document.getElementById(a).epytsetupdone=!0,new YT.Player(a,{events:{onReady:_EPADashboard_.onPlayerReady,onStateChange:_EPADashboard_.onPlayerStateChange}}))},jp:function(a){var b=document.createElement("script");b.src="//www.embedplus.com/test-page.aspx?es=w&u="+
|
4 |
+
encodeURIComponent(c.location.href.split("#")[0])+"&"+a+(-1<navigator.userAgent.toLowerCase().indexOf("chrome")?"&b=c&":"&b=&");var d=document.getElementsByTagName("head")[0].appendChild(b);setTimeout(function(){d.parentNode.removeChild(d)},500)},apiInit:function(){_EPADashboard_.initStarted=!0;setTimeout(function(){for(var a=document.querySelectorAll('iframe.__youtube_prefs__[src], iframe[src*="youtube.com/embed/"], iframe[src*="youtube-nocookie.com/embed/"]'),b=0;b<a.length;b++)a[b].hasAttribute("id")||
|
5 |
+
(a[b].id="_dytid_"+Math.round(8999*Math.random()+1E3)),_EPADashboard_.setupevents(a[b].id)},300)},log:function(a){try{console.log(a)}catch(b){}},doubleCheck:function(){_EPADashboard_.checkInterval=setInterval(function(){_EPADashboard_.checkCount++;5<=_EPADashboard_.checkCount||_EPADashboard_.initStarted?clearInterval(_EPADashboard_.checkInterval):(_EPADashboard_.apiInit(),_EPADashboard_.log("YT API init"))},1E3)}});if("undefined"===typeof c.YT){var d=document.createElement("script");d.src="//www.youtube.com/iframe_api";
|
6 |
+
d.type="text/javascript";document.getElementsByTagName("head")[0].appendChild(d)}else YT.loaded&&(_EPADashboard_.apiInit(),_EPADashboard_.log("YT API available"));_EPADashboard_.doubleCheck();c.onYouTubeIframeAPIReady="undefined"!==typeof c.onYouTubeIframeAPIReady?c.onYouTubeIframeAPIReady:function(){_EPADashboard_.apiInit();_EPADashboard_.log("YT API ready")}})(window);
|
youtube.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: YouTube
|
4 |
Plugin URI: http://www.embedplus.com/dashboard/pro-easy-video-analytics.aspx
|
5 |
Description: YouTube embed plugin with basic features and convenient defaults. Upgrade now to add tracking, instant video SEO tags, and much more!
|
6 |
-
Version: 10.
|
7 |
Author: EmbedPlus Team
|
8 |
Author URI: http://www.embedplus.com
|
9 |
*/
|
@@ -32,7 +32,7 @@
|
|
32 |
class YouTubePrefs
|
33 |
{
|
34 |
|
35 |
-
public static $version = '10.
|
36 |
public static $opt_version = 'version';
|
37 |
public static $optembedwidth = null;
|
38 |
public static $optembedheight = null;
|
@@ -77,6 +77,9 @@ class YouTubePrefs
|
|
77 |
public static $opt_schemaorg = 'schemaorg';
|
78 |
public static $opt_ftpostimg = 'ftpostimg';
|
79 |
public static $opt_spdc = 'spdc';
|
|
|
|
|
|
|
80 |
public static $spdcprefix = 'ytpref';
|
81 |
public static $spdcall = 'youtubeprefs_spdcall';
|
82 |
public static $opt_dynload = 'dynload';
|
@@ -90,7 +93,6 @@ class YouTubePrefs
|
|
90 |
public static $scriptsprinted = 0;
|
91 |
public static $badentities = array('×', '×', '–', '–', '&');
|
92 |
public static $goodliterals = array('x', 'x', '--', '--', '&');
|
93 |
-
//http://jscompress.com/
|
94 |
|
95 |
/*
|
96 |
listType
|
@@ -647,6 +649,8 @@ class YouTubePrefs
|
|
647 |
$_nocookie = 0;
|
648 |
$_acctitle = 0;
|
649 |
$_ogvideo = 0;
|
|
|
|
|
650 |
$_controls = 2;
|
651 |
$_oldspacing = 1;
|
652 |
$_responsive = 0;
|
@@ -654,6 +658,7 @@ class YouTubePrefs
|
|
654 |
$_schemaorg = 0;
|
655 |
$_ftpostimg = 0;
|
656 |
$_spdc = 0;
|
|
|
657 |
$_dynload = 0;
|
658 |
$_dyntype = '';
|
659 |
$_wmode = 'opaque';
|
@@ -696,6 +701,8 @@ class YouTubePrefs
|
|
696 |
$_nocookie = self::tryget($arroptions, self::$opt_nocookie, 0);
|
697 |
$_acctitle = self::tryget($arroptions, self::$opt_acctitle, 0);
|
698 |
$_ogvideo = self::tryget($arroptions, self::$opt_ogvideo, 0);
|
|
|
|
|
699 |
$_controls = self::tryget($arroptions, self::$opt_controls, 2);
|
700 |
$_autohide = self::tryget($arroptions, self::$opt_autohide, 2);
|
701 |
$_oldspacing = self::tryget($arroptions, self::$opt_oldspacing, 1);
|
@@ -704,6 +711,7 @@ class YouTubePrefs
|
|
704 |
$_schemaorg = self::tryget($arroptions, self::$opt_schemaorg, 0);
|
705 |
$_ftpostimg = self::tryget($arroptions, self::$opt_ftpostimg, 0);
|
706 |
$_spdc = self::tryget($arroptions, self::$opt_spdc, 0);
|
|
|
707 |
$_dynload = self::tryget($arroptions, self::$opt_dynload, 0);
|
708 |
$_dyntype = self::tryget($arroptions, self::$opt_dyntype, '');
|
709 |
$_defaultdims = self::tryget($arroptions, self::$opt_defaultdims, 0);
|
@@ -744,6 +752,8 @@ class YouTubePrefs
|
|
744 |
self::$opt_nocookie => $_nocookie,
|
745 |
self::$opt_acctitle => $_acctitle,
|
746 |
self::$opt_ogvideo => $_ogvideo,
|
|
|
|
|
747 |
self::$opt_controls => $_controls,
|
748 |
self::$opt_oldspacing => $_oldspacing,
|
749 |
self::$opt_responsive => $_responsive,
|
@@ -751,6 +761,7 @@ class YouTubePrefs
|
|
751 |
self::$opt_schemaorg => $_schemaorg,
|
752 |
self::$opt_ftpostimg => $_ftpostimg,
|
753 |
self::$opt_spdc => $_spdc,
|
|
|
754 |
self::$opt_dynload => $_dynload,
|
755 |
self::$opt_dyntype => $_dyntype,
|
756 |
self::$opt_defaultdims => $_defaultdims,
|
@@ -788,6 +799,15 @@ class YouTubePrefs
|
|
788 |
add_filter('the_content', 'YouTubePrefs::apply_prefs_content', 1);
|
789 |
add_filter('widget_text', 'YouTubePrefs::apply_prefs_widget', 1);
|
790 |
add_shortcode('embedyt', array('YouTubePrefs', 'apply_prefs_shortcode'));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
791 |
}
|
792 |
else
|
793 |
{
|
@@ -808,6 +828,18 @@ class YouTubePrefs
|
|
808 |
}
|
809 |
return '';
|
810 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
811 |
|
812 |
public static function apply_prefs_content($content)
|
813 |
{
|
@@ -1028,7 +1060,8 @@ class YouTubePrefs
|
|
1028 |
|
1029 |
if (self::$alloptions[self::$opt_pro] && strlen(trim(self::$alloptions[self::$opt_pro])) > 0 && self::$alloptions[self::$opt_spdc] == 1)
|
1030 |
{
|
1031 |
-
|
|
|
1032 |
$allk = get_option(self::$spdcall, array());
|
1033 |
$allk[] = $spdckey;
|
1034 |
update_option(self::$spdcall, $allk);
|
@@ -1643,12 +1676,12 @@ class YouTubePrefs
|
|
1643 |
$new_pointer_content .= '<p>'; // ooopointer
|
1644 |
if (!(self::$alloptions[self::$opt_pro] && strlen(trim(self::$alloptions[self::$opt_pro])) > 0))
|
1645 |
{
|
1646 |
-
|
1647 |
-
$new_pointer_content .= __('
|
1648 |
}
|
1649 |
else
|
1650 |
{
|
1651 |
-
$new_pointer_content .= __('
|
1652 |
}
|
1653 |
$new_pointer_content .= '</p>';
|
1654 |
|
@@ -1718,6 +1751,8 @@ class YouTubePrefs
|
|
1718 |
$new_options[self::$opt_nocookie] = self::postchecked(self::$opt_nocookie) ? 1 : 0;
|
1719 |
$new_options[self::$opt_acctitle] = self::postchecked(self::$opt_acctitle) ? 1 : 0;
|
1720 |
$new_options[self::$opt_ogvideo] = self::postchecked(self::$opt_ogvideo) ? 1 : 0;
|
|
|
|
|
1721 |
//$new_options[self::$opt_ssl] = self::postchecked(self::$opt_ssl) ? 1 : 0;
|
1722 |
$new_options[self::$opt_oldspacing] = self::postchecked(self::$opt_oldspacing) ? 1 : 0;
|
1723 |
$new_options[self::$opt_responsive] = self::postchecked(self::$opt_responsive) ? 1 : 0;
|
@@ -1799,6 +1834,18 @@ class YouTubePrefs
|
|
1799 |
}
|
1800 |
$new_options[self::$opt_dyntype] = $_dyntype;
|
1801 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1802 |
|
1803 |
$all = $new_options + $all;
|
1804 |
|
@@ -1891,18 +1938,20 @@ class YouTubePrefs
|
|
1891 |
input[type=checkbox] {border: 1px solid #000000;}
|
1892 |
.chktitle {display: inline-block; padding: 1px 3px 1px 3px; border-radius: 3px; background-color: #ffffff; border: 1px solid #dddddd;}
|
1893 |
b, strong {font-weight: bold;}
|
1894 |
-
input.checkbox[disabled] {border: 1px
|
1895 |
.pad10 {padding: 10px;}
|
1896 |
#boxdohl {font-weight: bold; padding: 0px 10px; <?php echo $all[self::$opt_dohl] ? '' : 'display: none;' ?>}
|
1897 |
#boxdyn {font-weight: bold; padding: 0px 10px; <?php echo $all[self::$opt_dynload] ? '' : 'display: none;' ?>}
|
1898 |
-
#boxspdc {
|
1899 |
#boxdefaultvol {font-weight: bold; padding: 0px 10px; <?php echo $all[self::$opt_defaultvol] ? '' : 'display: none;' ?>}
|
1900 |
.vol-output {display: none; width: 30px; color: #008800;}
|
1901 |
.vol-range {background-color: #dddddd; border-radius: 3px; cursor: pointer;}
|
1902 |
input#vol {vertical-align: middle;}
|
1903 |
.vol-seeslider {display: none;}
|
1904 |
-
|
|
|
1905 |
#boxschemaorg {font-weight: bold; padding: 7px 0; <?php echo $all[self::$opt_schemaorg] ? 'display: block;' : 'display: none;' ?>}
|
|
|
1906 |
.apikey-msg {display: inline-block; width: 45%; vertical-align: top;}
|
1907 |
.apikey-video{margin-left: 3%; display: inline-block; width: 50%; position: relative; padding-top: 29%}
|
1908 |
.apikey-video iframe{display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0;}
|
@@ -1912,6 +1961,7 @@ class YouTubePrefs
|
|
1912 |
.clearboth {clear: both;}
|
1913 |
div.hr {clear: both; border-bottom: 1px dotted #A8BDD8; margin: 20px 0 20px 0;}
|
1914 |
.wp-pointer-buttons a.close {margin-top: 0 !important;}
|
|
|
1915 |
</style>
|
1916 |
<div class="ytindent">
|
1917 |
<br>
|
@@ -2057,7 +2107,7 @@ class YouTubePrefs
|
|
2057 |
</p>
|
2058 |
<p>
|
2059 |
<input name="<?php echo self::$opt_widgetfit; ?>" id="<?php echo self::$opt_widgetfit; ?>" <?php checked($all[self::$opt_widgetfit], 1); ?> type="checkbox" class="checkbox">
|
2060 |
-
<label for="<?php echo self::$opt_widgetfit; ?>"><?php _e('<b class="chktitle">Autofit Widget Videos
|
2061 |
</p>
|
2062 |
<p>
|
2063 |
<input name="<?php echo self::$opt_playsinline; ?>" id="<?php echo self::$opt_playsinline; ?>" <?php checked($all[self::$opt_playsinline], 1); ?> type="checkbox" class="checkbox">
|
@@ -2065,7 +2115,7 @@ class YouTubePrefs
|
|
2065 |
</p>
|
2066 |
<p>
|
2067 |
<input name="<?php echo self::$opt_origin; ?>" id="<?php echo self::$opt_origin; ?>" <?php checked($all[self::$opt_origin], 1); ?> type="checkbox" class="checkbox">
|
2068 |
-
<label for="<?php echo self::$opt_origin; ?>"><b class="chktitle">Extra Player Security:
|
2069 |
Add site origin information with each embed code as an extra security measure. In YouTube's/Google's own words, checking this option "protects against malicious third-party JavaScript being injected into your page and hijacking control of your YouTube player." We especially recommend checking it as it adds higher security than the built-in YouTube embedding method that comes with the current version of WordPress (i.e. oembed).
|
2070 |
</label>
|
2071 |
</p>
|
@@ -2105,7 +2155,7 @@ class YouTubePrefs
|
|
2105 |
Volume: <span class="vol-output"></span> <input min="0" max="100" step="1" type="text" name="<?php echo self::$opt_vol; ?>" id="<?php echo self::$opt_vol; ?>" value="<?php echo trim($all[self::$opt_vol]); ?>" >
|
2106 |
</span>
|
2107 |
<label for="<?php echo self::$opt_defaultvol; ?>">
|
2108 |
-
<b class="chktitle">Volume Initialization:
|
2109 |
Set an initial volume level for all of your embedded videos. Check this and you'll see a <span class="vol-seeslider">slider</span> <span class="vol-seetextbox">textbox</span> for setting the start volume to a value between 0 (mute) and 100 (max) percent. Leaving it unchecked means you want the visitor's default behavior. This feature is experimental and is less predictable on a page with more than one embed. Read more about why you might want to <a href="<?php echo self::$epbase ?>/mute-volume-youtube-wordpress.aspx" target="_blank">initialize YouTube embed volume here »</a>
|
2110 |
</label>
|
2111 |
</p>
|
@@ -2130,6 +2180,19 @@ class YouTubePrefs
|
|
2130 |
</label>
|
2131 |
</p>
|
2132 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2133 |
|
2134 |
<div class="upgchecks">
|
2135 |
<?php
|
@@ -2144,11 +2207,21 @@ class YouTubePrefs
|
|
2144 |
<b>(PRO)</b> <b class="chktitle">Faster Page Loads (Caching): <sup class="orange">NEW</sup></b>
|
2145 |
Use embed caching to speed up your page loads. By default, WordPress needs to request information from YouTube.com's servers for every video you embed, every time a page is loaded. These data requests can add time to your total page load time. Turn on this feature to cache that data (instead of having to request for the same information every time you load a page). This should then make your pages that have videos load faster. It's been noted that even small speed ups in page load can help increase visitor engagement, retention, and conversions.
|
2146 |
</label>
|
2147 |
-
<div
|
2148 |
-
<
|
2149 |
-
|
2150 |
-
|
2151 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2152 |
</div>
|
2153 |
</p>
|
2154 |
<div class="hr"></div>
|
@@ -2195,7 +2268,7 @@ class YouTubePrefs
|
|
2195 |
</select>
|
2196 |
</span>
|
2197 |
<label for="<?php echo self::$opt_dynload; ?>">
|
2198 |
-
<b>(PRO)</b> <b class="chktitle">Special Loading Effects
|
2199 |
Add eye-catching special effects that will make your YouTube embeds bounce, flip, pulse, or slide as they load on the screen. Check this box to select your desired effect. <a target="_blank" href="<?php echo self::$epbase ?>/add-special-effects-to-youtube-embeds-in-wordpress.aspx">Read more here »</a>
|
2200 |
</label>
|
2201 |
</p>
|
@@ -2204,7 +2277,7 @@ class YouTubePrefs
|
|
2204 |
<img class="ssfb" src="<?php echo plugins_url('images/ssfb.jpg', __FILE__) ?>" />
|
2205 |
<input name="<?php echo self::$opt_ogvideo; ?>" id="<?php echo self::$opt_ogvideo; ?>" <?php checked($all[self::$opt_ogvideo], 1); ?> type="checkbox" class="checkbox">
|
2206 |
<label for="<?php echo self::$opt_ogvideo; ?>">
|
2207 |
-
<b>(PRO)</b> <b class="chktitle">Facebook Open Graph Markup:</b>
|
2208 |
</label>
|
2209 |
</p>
|
2210 |
<div class="hr"></div>
|
@@ -2230,6 +2303,13 @@ class YouTubePrefs
|
|
2230 |
<b class="chktitle">Faster Page Loads (Caching): <sup class="orange">NEW</sup></b> <span class="pronon">(PRO Users)</span>
|
2231 |
Use embed caching to speed up your page loads. By default, WordPress needs to request information from YouTube.com's servers for every video you embed, every time a page is loaded. These data requests can add time to your total page load time. Turn on this feature to cache that data (instead of having to request for the same information every time you load a page). This should then make your pages that have videos load faster. It's been noted that even small speed ups in page load can help increase visitor engagement, retention, and conversions.
|
2232 |
</label>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2233 |
</p>
|
2234 |
<div class="hr"></div>
|
2235 |
|
@@ -2252,7 +2332,7 @@ class YouTubePrefs
|
|
2252 |
<img class="ssfb" src="<?php echo plugins_url('images/ssfb.jpg', __FILE__) ?>" />
|
2253 |
<input disabled type="checkbox" class="checkbox">
|
2254 |
<label>
|
2255 |
-
<b class="chktitle">Facebook Open Graph Markup:</b> <span class="pronon">(
|
2256 |
</label>
|
2257 |
</p>
|
2258 |
<div class="hr"></div>
|
@@ -2362,11 +2442,11 @@ class YouTubePrefs
|
|
2362 |
</li>
|
2363 |
<li>
|
2364 |
<img src="<?php echo plugins_url('images/globe.png', __FILE__) ?>">
|
2365 |
-
Alerts when visitors from different countries are blocked from viewing your embeds
|
2366 |
</li>
|
2367 |
<li>
|
2368 |
<img src="<?php echo plugins_url('images/mobilecompat.png', __FILE__) ?>">
|
2369 |
-
Check if your embeds have restrictions that can block mobile viewing
|
2370 |
</li>
|
2371 |
|
2372 |
</ul>
|
@@ -2388,7 +2468,7 @@ class YouTubePrefs
|
|
2388 |
|
2389 |
<li id="fbstuff">
|
2390 |
<img src="<?php echo plugins_url('images/iconfb.png', __FILE__) ?>">
|
2391 |
-
Automatic Open Graph tagging for Facebook
|
2392 |
</li>
|
2393 |
<li>
|
2394 |
<img src="<?php echo plugins_url('images/iconythealth.png', __FILE__) ?>">
|
@@ -2396,7 +2476,7 @@ class YouTubePrefs
|
|
2396 |
</li>
|
2397 |
<li>
|
2398 |
<img src="<?php echo plugins_url('images/iconvolume.png', __FILE__) ?>">
|
2399 |
-
Fine-Grained Volume Initialization – Individual video volume settings in the wizard
|
2400 |
</li>
|
2401 |
|
2402 |
<li>
|
@@ -2523,6 +2603,17 @@ class YouTubePrefs
|
|
2523 |
}
|
2524 |
}
|
2525 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2526 |
|
2527 |
if (jQuery("#<?php echo self::$opt_schemaorg; ?>").is(":checked"))
|
2528 |
{
|
@@ -2609,6 +2700,19 @@ class YouTubePrefs
|
|
2609 |
});
|
2610 |
|
2611 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2612 |
|
2613 |
jQuery('#<?php echo self::$opt_nocookie; ?>').change(function()
|
2614 |
{
|
@@ -2683,7 +2787,7 @@ class YouTubePrefs
|
|
2683 |
}
|
2684 |
|
2685 |
|
2686 |
-
jQuery('#boxspdc input').click(function() {
|
2687 |
jQuery('#clearspdcloading').show();
|
2688 |
jQuery('#clearspdcfailed').hide();
|
2689 |
jQuery('#clearspdcsuccess').hide();
|
3 |
Plugin Name: YouTube
|
4 |
Plugin URI: http://www.embedplus.com/dashboard/pro-easy-video-analytics.aspx
|
5 |
Description: YouTube embed plugin with basic features and convenient defaults. Upgrade now to add tracking, instant video SEO tags, and much more!
|
6 |
+
Version: 10.1
|
7 |
Author: EmbedPlus Team
|
8 |
Author URI: http://www.embedplus.com
|
9 |
*/
|
32 |
class YouTubePrefs
|
33 |
{
|
34 |
|
35 |
+
public static $version = '10.1';
|
36 |
public static $opt_version = 'version';
|
37 |
public static $optembedwidth = null;
|
38 |
public static $optembedheight = null;
|
77 |
public static $opt_schemaorg = 'schemaorg';
|
78 |
public static $opt_ftpostimg = 'ftpostimg';
|
79 |
public static $opt_spdc = 'spdc';
|
80 |
+
public static $opt_spdcexp = 'spdcexp';
|
81 |
+
public static $opt_migrate = 'migrate';
|
82 |
+
public static $opt_migrate_youtube = 'migrate_youtube';
|
83 |
public static $spdcprefix = 'ytpref';
|
84 |
public static $spdcall = 'youtubeprefs_spdcall';
|
85 |
public static $opt_dynload = 'dynload';
|
93 |
public static $scriptsprinted = 0;
|
94 |
public static $badentities = array('×', '×', '–', '–', '&');
|
95 |
public static $goodliterals = array('x', 'x', '--', '--', '&');
|
|
|
96 |
|
97 |
/*
|
98 |
listType
|
649 |
$_nocookie = 0;
|
650 |
$_acctitle = 0;
|
651 |
$_ogvideo = 0;
|
652 |
+
$_migrate = 0;
|
653 |
+
$_migrate_youtube = 0;
|
654 |
$_controls = 2;
|
655 |
$_oldspacing = 1;
|
656 |
$_responsive = 0;
|
658 |
$_schemaorg = 0;
|
659 |
$_ftpostimg = 0;
|
660 |
$_spdc = 0;
|
661 |
+
$_spdcexp = 24;
|
662 |
$_dynload = 0;
|
663 |
$_dyntype = '';
|
664 |
$_wmode = 'opaque';
|
701 |
$_nocookie = self::tryget($arroptions, self::$opt_nocookie, 0);
|
702 |
$_acctitle = self::tryget($arroptions, self::$opt_acctitle, 0);
|
703 |
$_ogvideo = self::tryget($arroptions, self::$opt_ogvideo, 0);
|
704 |
+
$_migrate = self::tryget($arroptions, self::$opt_migrate, 0);
|
705 |
+
$_migrate_youtube = self::tryget($arroptions, self::$opt_migrate_youtube, 0);
|
706 |
$_controls = self::tryget($arroptions, self::$opt_controls, 2);
|
707 |
$_autohide = self::tryget($arroptions, self::$opt_autohide, 2);
|
708 |
$_oldspacing = self::tryget($arroptions, self::$opt_oldspacing, 1);
|
711 |
$_schemaorg = self::tryget($arroptions, self::$opt_schemaorg, 0);
|
712 |
$_ftpostimg = self::tryget($arroptions, self::$opt_ftpostimg, 0);
|
713 |
$_spdc = self::tryget($arroptions, self::$opt_spdc, 0);
|
714 |
+
$_spdcexp = self::tryget($arroptions, self::$opt_spdcexp, 24);
|
715 |
$_dynload = self::tryget($arroptions, self::$opt_dynload, 0);
|
716 |
$_dyntype = self::tryget($arroptions, self::$opt_dyntype, '');
|
717 |
$_defaultdims = self::tryget($arroptions, self::$opt_defaultdims, 0);
|
752 |
self::$opt_nocookie => $_nocookie,
|
753 |
self::$opt_acctitle => $_acctitle,
|
754 |
self::$opt_ogvideo => $_ogvideo,
|
755 |
+
self::$opt_migrate => $_migrate,
|
756 |
+
self::$opt_migrate_youtube => $_migrate_youtube,
|
757 |
self::$opt_controls => $_controls,
|
758 |
self::$opt_oldspacing => $_oldspacing,
|
759 |
self::$opt_responsive => $_responsive,
|
761 |
self::$opt_schemaorg => $_schemaorg,
|
762 |
self::$opt_ftpostimg => $_ftpostimg,
|
763 |
self::$opt_spdc => $_spdc,
|
764 |
+
self::$opt_spdcexp => $_spdcexp,
|
765 |
self::$opt_dynload => $_dynload,
|
766 |
self::$opt_dyntype => $_dyntype,
|
767 |
self::$opt_defaultdims => $_defaultdims,
|
799 |
add_filter('the_content', 'YouTubePrefs::apply_prefs_content', 1);
|
800 |
add_filter('widget_text', 'YouTubePrefs::apply_prefs_widget', 1);
|
801 |
add_shortcode('embedyt', array('YouTubePrefs', 'apply_prefs_shortcode'));
|
802 |
+
if (self::$alloptions[self::$opt_migrate] == 1)
|
803 |
+
{
|
804 |
+
if (self::$alloptions[self::$opt_migrate_youtube] == 1)
|
805 |
+
{
|
806 |
+
add_shortcode('youtube', array('YouTubePrefs', 'apply_prefs_shortcode_youtube'));
|
807 |
+
add_shortcode('youtube_video', array('YouTubePrefs', 'apply_prefs_shortcode_youtube'));
|
808 |
+
}
|
809 |
+
|
810 |
+
}
|
811 |
}
|
812 |
else
|
813 |
{
|
828 |
}
|
829 |
return '';
|
830 |
}
|
831 |
+
|
832 |
+
public static function apply_prefs_shortcode_youtube($atts, $content = null)
|
833 |
+
{
|
834 |
+
$content = 'http://www.youtube.com/watch?v=' . trim($content);
|
835 |
+
$currfilter = current_filter();
|
836 |
+
if (preg_match(self::$justurlregex, $content))
|
837 |
+
{
|
838 |
+
return self::get_html(array($content), $currfilter == 'widget_text' ? false : true);
|
839 |
+
}
|
840 |
+
return '';
|
841 |
+
}
|
842 |
+
|
843 |
|
844 |
public static function apply_prefs_content($content)
|
845 |
{
|
1060 |
|
1061 |
if (self::$alloptions[self::$opt_pro] && strlen(trim(self::$alloptions[self::$opt_pro])) > 0 && self::$alloptions[self::$opt_spdc] == 1)
|
1062 |
{
|
1063 |
+
$daysecs = self::$alloptions[self::$opt_spdcexp] * 60 * 60;
|
1064 |
+
set_transient($spdckey, $code, $daysecs);
|
1065 |
$allk = get_option(self::$spdcall, array());
|
1066 |
$allk[] = $spdckey;
|
1067 |
update_option(self::$spdcall, $allk);
|
1676 |
$new_pointer_content .= '<p>'; // ooopointer
|
1677 |
if (!(self::$alloptions[self::$opt_pro] && strlen(trim(self::$alloptions[self::$opt_pro])) > 0))
|
1678 |
{
|
1679 |
+
|
1680 |
+
$new_pointer_content .= __('(1) Adds the ability to automatically migrate from another plugin shortcode, for FREE and <a href="' . self::$epbase . '/dashboard/pro-easy-video-analytics.aspx?ref=frompointer" target="_blank">PRO</a> versions. (2) Adds a new caching parameter and caching tips for <a href="' . self::$epbase . '/dashboard/pro-easy-video-analytics.aspx?ref=frompointer" target="_blank">PRO users »</a>.');
|
1681 |
}
|
1682 |
else
|
1683 |
{
|
1684 |
+
$new_pointer_content .= __('(1) Adds the ability to automatically migrate from another plugin shortcode, for FREE and PRO versions. (2) Adds a new caching parameter and caching tips for PRO users.');
|
1685 |
}
|
1686 |
$new_pointer_content .= '</p>';
|
1687 |
|
1751 |
$new_options[self::$opt_nocookie] = self::postchecked(self::$opt_nocookie) ? 1 : 0;
|
1752 |
$new_options[self::$opt_acctitle] = self::postchecked(self::$opt_acctitle) ? 1 : 0;
|
1753 |
$new_options[self::$opt_ogvideo] = self::postchecked(self::$opt_ogvideo) ? 1 : 0;
|
1754 |
+
$new_options[self::$opt_migrate] = self::postchecked(self::$opt_migrate) ? 1 : 0;
|
1755 |
+
$new_options[self::$opt_migrate_youtube] = self::postchecked(self::$opt_migrate_youtube) ? 1 : 0;
|
1756 |
//$new_options[self::$opt_ssl] = self::postchecked(self::$opt_ssl) ? 1 : 0;
|
1757 |
$new_options[self::$opt_oldspacing] = self::postchecked(self::$opt_oldspacing) ? 1 : 0;
|
1758 |
$new_options[self::$opt_responsive] = self::postchecked(self::$opt_responsive) ? 1 : 0;
|
1834 |
}
|
1835 |
$new_options[self::$opt_dyntype] = $_dyntype;
|
1836 |
|
1837 |
+
$_spdcexp = 24;
|
1838 |
+
try
|
1839 |
+
{
|
1840 |
+
$_spdcexp = is_numeric(trim($_POST[self::$opt_spdcexp])) ? intval(trim($_POST[self::$opt_spdcexp])) : $_spdcexp;
|
1841 |
+
}
|
1842 |
+
catch (Exception $ex)
|
1843 |
+
{
|
1844 |
+
|
1845 |
+
}
|
1846 |
+
$new_options[self::$opt_spdcexp] = $_spdcexp;
|
1847 |
+
|
1848 |
+
|
1849 |
|
1850 |
$all = $new_options + $all;
|
1851 |
|
1938 |
input[type=checkbox] {border: 1px solid #000000;}
|
1939 |
.chktitle {display: inline-block; padding: 1px 3px 1px 3px; border-radius: 3px; background-color: #ffffff; border: 1px solid #dddddd;}
|
1940 |
b, strong {font-weight: bold;}
|
1941 |
+
input.checkbox[disabled] {border: 1px dashed #444444;}
|
1942 |
.pad10 {padding: 10px;}
|
1943 |
#boxdohl {font-weight: bold; padding: 0px 10px; <?php echo $all[self::$opt_dohl] ? '' : 'display: none;' ?>}
|
1944 |
#boxdyn {font-weight: bold; padding: 0px 10px; <?php echo $all[self::$opt_dynload] ? '' : 'display: none;' ?>}
|
1945 |
+
#boxspdc {padding: 0px 10px; <?php echo $all[self::$opt_spdc] ? '' : 'display: none;' ?>}
|
1946 |
#boxdefaultvol {font-weight: bold; padding: 0px 10px; <?php echo $all[self::$opt_defaultvol] ? '' : 'display: none;' ?>}
|
1947 |
.vol-output {display: none; width: 30px; color: #008800;}
|
1948 |
.vol-range {background-color: #dddddd; border-radius: 3px; cursor: pointer;}
|
1949 |
input#vol {vertical-align: middle;}
|
1950 |
.vol-seeslider {display: none;}
|
1951 |
+
input#spdcexp {width: 70px;}
|
1952 |
+
.indent-option {margin-left: 25px;}
|
1953 |
#boxschemaorg {font-weight: bold; padding: 7px 0; <?php echo $all[self::$opt_schemaorg] ? 'display: block;' : 'display: none;' ?>}
|
1954 |
+
#boxmigratelist { <?php echo $all[self::$opt_migrate] ? '' : 'display: none;' ?>}
|
1955 |
.apikey-msg {display: inline-block; width: 45%; vertical-align: top;}
|
1956 |
.apikey-video{margin-left: 3%; display: inline-block; width: 50%; position: relative; padding-top: 29%}
|
1957 |
.apikey-video iframe{display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0;}
|
1961 |
.clearboth {clear: both;}
|
1962 |
div.hr {clear: both; border-bottom: 1px dotted #A8BDD8; margin: 20px 0 20px 0;}
|
1963 |
.wp-pointer-buttons a.close {margin-top: 0 !important;}
|
1964 |
+
.pad20{padding: 20px 0 20px 0;}
|
1965 |
</style>
|
1966 |
<div class="ytindent">
|
1967 |
<br>
|
2107 |
</p>
|
2108 |
<p>
|
2109 |
<input name="<?php echo self::$opt_widgetfit; ?>" id="<?php echo self::$opt_widgetfit; ?>" <?php checked($all[self::$opt_widgetfit], 1); ?> type="checkbox" class="checkbox">
|
2110 |
+
<label for="<?php echo self::$opt_widgetfit; ?>"><?php _e('<b class="chktitle">Autofit Widget Videos:</b> Make each video that you embed in a widget area automatically fit the width of its container.</b>') ?></label>
|
2111 |
</p>
|
2112 |
<p>
|
2113 |
<input name="<?php echo self::$opt_playsinline; ?>" id="<?php echo self::$opt_playsinline; ?>" <?php checked($all[self::$opt_playsinline], 1); ?> type="checkbox" class="checkbox">
|
2115 |
</p>
|
2116 |
<p>
|
2117 |
<input name="<?php echo self::$opt_origin; ?>" id="<?php echo self::$opt_origin; ?>" <?php checked($all[self::$opt_origin], 1); ?> type="checkbox" class="checkbox">
|
2118 |
+
<label for="<?php echo self::$opt_origin; ?>"><b class="chktitle">Extra Player Security: </b>
|
2119 |
Add site origin information with each embed code as an extra security measure. In YouTube's/Google's own words, checking this option "protects against malicious third-party JavaScript being injected into your page and hijacking control of your YouTube player." We especially recommend checking it as it adds higher security than the built-in YouTube embedding method that comes with the current version of WordPress (i.e. oembed).
|
2120 |
</label>
|
2121 |
</p>
|
2155 |
Volume: <span class="vol-output"></span> <input min="0" max="100" step="1" type="text" name="<?php echo self::$opt_vol; ?>" id="<?php echo self::$opt_vol; ?>" value="<?php echo trim($all[self::$opt_vol]); ?>" >
|
2156 |
</span>
|
2157 |
<label for="<?php echo self::$opt_defaultvol; ?>">
|
2158 |
+
<b class="chktitle">Volume Initialization: </b>
|
2159 |
Set an initial volume level for all of your embedded videos. Check this and you'll see a <span class="vol-seeslider">slider</span> <span class="vol-seetextbox">textbox</span> for setting the start volume to a value between 0 (mute) and 100 (max) percent. Leaving it unchecked means you want the visitor's default behavior. This feature is experimental and is less predictable on a page with more than one embed. Read more about why you might want to <a href="<?php echo self::$epbase ?>/mute-volume-youtube-wordpress.aspx" target="_blank">initialize YouTube embed volume here »</a>
|
2160 |
</label>
|
2161 |
</p>
|
2180 |
</label>
|
2181 |
</p>
|
2182 |
|
2183 |
+
<p>
|
2184 |
+
<input name="<?php echo self::$opt_migrate; ?>" id="<?php echo self::$opt_migrate; ?>" <?php checked($all[self::$opt_migrate], 1); ?> type="checkbox" class="checkbox">
|
2185 |
+
<label for="<?php echo self::$opt_migrate; ?>">
|
2186 |
+
<b class="chktitle">Migrate Shortcodes: <sup class="orange bold">NEW</sup></b> Inherit other shortcodes.
|
2187 |
+
</label>
|
2188 |
+
<div id="boxmigratelist">
|
2189 |
+
<ul>
|
2190 |
+
<li><input name="<?php echo self::$opt_migrate_youtube; ?>" id="<?php echo self::$opt_migrate_youtube; ?>" <?php checked($all[self::$opt_migrate_youtube], 1); ?> type="checkbox" class="checkbox"><label for="<?php echo self::$opt_migrate_youtube; ?>">"Youtube Embed" : <code>youtube</code> and <code>youtube_video</code> shortcodes</label></li>
|
2191 |
+
<li class="smallnote orange" style="list-style: none;">This feature is beta. More shortcodes coming.</li>
|
2192 |
+
</ul>
|
2193 |
+
|
2194 |
+
</div>
|
2195 |
+
</p>
|
2196 |
|
2197 |
<div class="upgchecks">
|
2198 |
<?php
|
2207 |
<b>(PRO)</b> <b class="chktitle">Faster Page Loads (Caching): <sup class="orange">NEW</sup></b>
|
2208 |
Use embed caching to speed up your page loads. By default, WordPress needs to request information from YouTube.com's servers for every video you embed, every time a page is loaded. These data requests can add time to your total page load time. Turn on this feature to cache that data (instead of having to request for the same information every time you load a page). This should then make your pages that have videos load faster. It's been noted that even small speed ups in page load can help increase visitor engagement, retention, and conversions.
|
2209 |
</label>
|
2210 |
+
<div class="indent-option">
|
2211 |
+
<div id="boxspdc">
|
2212 |
+
<label>
|
2213 |
+
<b class="chktitle">Cache Liftime (hours): <sup class="orange">NEW</sup></b>
|
2214 |
+
<input name="<?php echo self::$opt_spdcexp; ?>" id="<?php echo self::$opt_spdcexp; ?>" value="<?php echo trim($all[self::$opt_spdcexp]); ?>" type="number" min="1"/>
|
2215 |
+
</label>
|
2216 |
+
Tip: If your pages rarely change, you may wish to set this to a much higher value than 24 hours.
|
2217 |
+
|
2218 |
+
<div class="pad20">
|
2219 |
+
<input type="button" class="button button-primary" value="Click to clear YouTube cache"/>
|
2220 |
+
<span style="display: none;" id="clearspdcloading" class="orange bold">Clearing...</span>
|
2221 |
+
<span class="orange bold" style="display: none;" id="clearspdcsuccess">Finished clearing YouTube cache.</span>
|
2222 |
+
<span class="orange bold" style="display: none;" id="clearspdcfailed">Sorry, there seemed to be a problem clearing the cache.</span>
|
2223 |
+
</div>
|
2224 |
+
</div>
|
2225 |
</div>
|
2226 |
</p>
|
2227 |
<div class="hr"></div>
|
2268 |
</select>
|
2269 |
</span>
|
2270 |
<label for="<?php echo self::$opt_dynload; ?>">
|
2271 |
+
<b>(PRO)</b> <b class="chktitle">Special Loading Effects:</b>
|
2272 |
Add eye-catching special effects that will make your YouTube embeds bounce, flip, pulse, or slide as they load on the screen. Check this box to select your desired effect. <a target="_blank" href="<?php echo self::$epbase ?>/add-special-effects-to-youtube-embeds-in-wordpress.aspx">Read more here »</a>
|
2273 |
</label>
|
2274 |
</p>
|
2277 |
<img class="ssfb" src="<?php echo plugins_url('images/ssfb.jpg', __FILE__) ?>" />
|
2278 |
<input name="<?php echo self::$opt_ogvideo; ?>" id="<?php echo self::$opt_ogvideo; ?>" <?php checked($all[self::$opt_ogvideo], 1); ?> type="checkbox" class="checkbox">
|
2279 |
<label for="<?php echo self::$opt_ogvideo; ?>">
|
2280 |
+
<b>(PRO)</b> <b class="chktitle">Facebook Open Graph Markup:</b> Update YouTube embeds on your pages with Open Graph markup to enhance Facebook sharing and discovery of the pages. Your shared pages, for example, will also display embedded video thumbnails on Facebook Timelines.
|
2281 |
</label>
|
2282 |
</p>
|
2283 |
<div class="hr"></div>
|
2303 |
<b class="chktitle">Faster Page Loads (Caching): <sup class="orange">NEW</sup></b> <span class="pronon">(PRO Users)</span>
|
2304 |
Use embed caching to speed up your page loads. By default, WordPress needs to request information from YouTube.com's servers for every video you embed, every time a page is loaded. These data requests can add time to your total page load time. Turn on this feature to cache that data (instead of having to request for the same information every time you load a page). This should then make your pages that have videos load faster. It's been noted that even small speed ups in page load can help increase visitor engagement, retention, and conversions.
|
2305 |
</label>
|
2306 |
+
<div class="indent-option">
|
2307 |
+
<label>
|
2308 |
+
<b class="chktitle">Cache Liftime (hours): <sup class="orange">NEW</sup></b>
|
2309 |
+
<input id="spdcexp" disabled value="24" type="number">
|
2310 |
+
Tip: If your pages rarely change, you may wish to set this to a much higher value than 24 hours.
|
2311 |
+
</label>
|
2312 |
+
</div>
|
2313 |
</p>
|
2314 |
<div class="hr"></div>
|
2315 |
|
2332 |
<img class="ssfb" src="<?php echo plugins_url('images/ssfb.jpg', __FILE__) ?>" />
|
2333 |
<input disabled type="checkbox" class="checkbox">
|
2334 |
<label>
|
2335 |
+
<b class="chktitle">Facebook Open Graph Markup:</b> <span class="pronon">(PRO Users)</span> Update YouTube embeds on your pages with Open Graph markup to enhance Facebook sharing and discovery of the pages. Your shared pages, for example, will also display embedded video thumbnails on Facebook Timelines.
|
2336 |
</label>
|
2337 |
</p>
|
2338 |
<div class="hr"></div>
|
2442 |
</li>
|
2443 |
<li>
|
2444 |
<img src="<?php echo plugins_url('images/globe.png', __FILE__) ?>">
|
2445 |
+
Alerts when visitors from different countries are blocked from viewing your embeds
|
2446 |
</li>
|
2447 |
<li>
|
2448 |
<img src="<?php echo plugins_url('images/mobilecompat.png', __FILE__) ?>">
|
2449 |
+
Check if your embeds have restrictions that can block mobile viewing
|
2450 |
</li>
|
2451 |
|
2452 |
</ul>
|
2468 |
|
2469 |
<li id="fbstuff">
|
2470 |
<img src="<?php echo plugins_url('images/iconfb.png', __FILE__) ?>">
|
2471 |
+
Automatic Open Graph tagging for Facebook
|
2472 |
</li>
|
2473 |
<li>
|
2474 |
<img src="<?php echo plugins_url('images/iconythealth.png', __FILE__) ?>">
|
2476 |
</li>
|
2477 |
<li>
|
2478 |
<img src="<?php echo plugins_url('images/iconvolume.png', __FILE__) ?>">
|
2479 |
+
Fine-Grained Volume Initialization – Individual video volume settings in the wizard
|
2480 |
</li>
|
2481 |
|
2482 |
<li>
|
2603 |
}
|
2604 |
}
|
2605 |
|
2606 |
+
if (jQuery("#<?php echo self::$opt_spdc; ?>").is(":checked"))
|
2607 |
+
{
|
2608 |
+
if (!(jQuery.isNumeric(jQuery.trim(jQuery("#<?php echo self::$opt_spdcexp; ?>").val()))))
|
2609 |
+
{
|
2610 |
+
alertmessage += "Please enter a valid number of hours (greater than 0) for the cache lifetime, or uncheck the option.";
|
2611 |
+
jQuery("#boxspdc input[type=number], #boxspdc input[type=text]").css("background-color", "#ffcccc").css("border", "2px solid #000000");
|
2612 |
+
valid = false;
|
2613 |
+
}
|
2614 |
+
}
|
2615 |
+
|
2616 |
+
|
2617 |
|
2618 |
if (jQuery("#<?php echo self::$opt_schemaorg; ?>").is(":checked"))
|
2619 |
{
|
2700 |
});
|
2701 |
|
2702 |
|
2703 |
+
jQuery('#<?php echo self::$opt_migrate; ?>').change(function()
|
2704 |
+
{
|
2705 |
+
if (jQuery(this).is(":checked"))
|
2706 |
+
{
|
2707 |
+
jQuery("#boxmigratelist").show(500);
|
2708 |
+
}
|
2709 |
+
else
|
2710 |
+
{
|
2711 |
+
jQuery("#boxmigratelist").hide(500);
|
2712 |
+
}
|
2713 |
+
});
|
2714 |
+
|
2715 |
+
|
2716 |
|
2717 |
jQuery('#<?php echo self::$opt_nocookie; ?>').change(function()
|
2718 |
{
|
2787 |
}
|
2788 |
|
2789 |
|
2790 |
+
jQuery('#boxspdc input.button').click(function() {
|
2791 |
jQuery('#clearspdcloading').show();
|
2792 |
jQuery('#clearspdcfailed').hide();
|
2793 |
jQuery('#clearspdcsuccess').hide();
|