@@ -60,19 +60,18 @@ function mfbfw_defaults() {
6060 // Appearance
6161 'border ' => '' ,
6262 'borderColor ' => '#BBBBBB ' ,
63- 'showCloseButton ' => 'on ' ,
6463 'paddingColor ' => '#FFFFFF ' ,
65- 'padding ' => '15 ' ,
64+ 'padding ' => '10 ' ,
6665 'overlayShow ' => 'on ' ,
6766 'overlayColor ' => '#000000 ' ,
68- 'overlayOpacity ' => '0.7 ' ,
67+ 'overlayOpacity ' => '0.3 ' ,
6968 'titleShow ' => 'on ' ,
7069 'titlePosition ' => 'inside ' ,
7170 'titleColor ' => '#333333 ' ,
7271 'showNavArrows ' => 'on ' ,
7372 'titleSize ' => '14 ' ,
74- 'showCloseButton ' => 'true ' ,
75- 'showToolbar ' => 'true ' ,
73+ 'showCloseButton ' => '' ,
74+ 'showToolbar ' => 'on ' ,
7675 // Animations
7776 'zoomOpacity ' => 'on ' ,
7877 'zoomSpeedIn ' => '500 ' ,
@@ -83,12 +82,12 @@ function mfbfw_defaults() {
8382 'hideOnOverlayClick ' => 'function(current, event) {
8483 return current.type === "image" ? "close" : false;
8584 }, ' ,
86- 'hideOnContentClick ' => 'on ' ,
85+ 'hideOnContentClick ' => '' ,
8786 'enableEscapeButton ' => 'on ' ,
88- 'cyclic ' => 'on ' ,
89- 'mouseWheel ' => 'off ' ,
90- 'disableWoocommercePages ' => 'off ' ,
91- 'disableWoocommerceProducts ' => 'off ' ,
87+ 'cyclic ' => '' ,
88+ 'mouseWheel ' => '' ,
89+ 'disableWoocommercePages ' => '' ,
90+ 'disableWoocommerceProducts ' => '' ,
9291 // Gallery Type
9392 'galleryType ' => 'all ' ,
9493 'customExpression ' => 'jQuery(thumbnails).attr("data-fancybox","gallery").getTitle(); ' ,
@@ -106,11 +105,12 @@ function mfbfw_defaults() {
106105 'copyTitleFunction ' => 'var arr = jQuery("a[data-fancybox]");
107106 jQuery.each(arr, function() {
108107 var title = jQuery(this).children("img").attr("title");
109- jQuery(this).attr("title",title);
108+ var caption = jQuery(this).next("figcaption").html();
109+ if(caption.length){jQuery(this).attr("title",title+" " + caption)}else{ jQuery(this).attr("title",title);}console.log(caption);
110110 }); ' ,
111111 'nojQuery ' => '' ,
112112 'extraCallsEnable ' => '' ,
113- 'extraCalls ' => '' ,
113+ 'extraCallsData ' => '' ,
114114 'uninstall ' => '' ,
115115 );
116116
@@ -197,12 +197,31 @@ function mfbfw_init() {
197197 '} ' ;
198198
199199 // fix undefined index copyTitleFunction. $mfbfw array misses this index.
200+
200201 $ mfbfw ['copyTitleFunction ' ] = 'var arr = jQuery("a[data-fancybox]");
201202 jQuery.each(arr, function() {
202203 var title = jQuery(this).children("img").attr("title");
203- jQuery(this).attr("title",title);
204+ var caption = jQuery(this).next("figcaption").html();
205+ if(caption && title){jQuery(this).attr("title",title+" " + caption)}else if(title){ jQuery(this).attr("title",title);}else if(caption){jQuery(this).attr("title",caption);}
204206 }); ' ;
205207
208+
209+ if ( $ mfbfw ['titlePosition ' ] == 'inside ' ) {
210+ $ afterLoad = 'function( instance, current ) { ' ;
211+ $ afterLoad .= 'current.$content.append( \'<div class=\"fancybox-custom-caption\" style=\" position: absolute;left:0;right:0;color:#000;padding-top:10px;bottom:-50px;background:#fff;margin:0 auto;text-align:center; \"> \' + current.opts.caption + \'</div> \'); ' ;
212+ $ afterLoad .= '} ' ;
213+ $ hideCaption = 'div.fancybox-caption{display:none !important;} ' ;
214+ } else if ( $ mfbfw ['titlePosition ' ] == 'over ' ) {
215+ $ afterLoad = 'function( instance, current ) { ' ;
216+ $ afterLoad .= 'current.$content.append( \'<div class=\"fancybox-custom-caption\" style=\" position: absolute;left:0;right:0;color:#000;padding-top:10px;bottom:0;background:#fff;margin:0 auto;text-align:center; \"> \' + current.opts.caption + \'</div> \'); ' ;
217+ $ afterLoad .= '} ' ;
218+ $ hideCaption = 'div.fancybox-caption{display:none !important;} ' ;
219+ } else {
220+ $ afterLoad .= '"" ' ;
221+ $ hideCaption = '' ;
222+ }
223+
224+
206225 if ( isset ( $ mfbfw ['autoDimensions ' ] ) && $ mfbfw ['autoDimensions ' ] == true ) {
207226 $ frameSize = '' ;
208227 } else {
@@ -218,7 +237,7 @@ function mfbfw_init() {
218237 if ( $ mfbfw ['titlePosition ' ] == 'inside ' ) {
219238 $ captionPosition = 'div.fancybox-caption p.caption-title {background:#fff; width:auto;padding:10px 30px;} ' ;
220239 } elseif ( $ mfbfw ['titlePosition ' ] == 'float ' ) {
221- $ captionPosition = 'div.fancybox-caption p.caption-title {background:transparent ;} ' ;
240+ $ captionPosition = 'div.fancybox-caption p.caption-title {background:#fff;color:#000;padding:10px 30px;width:auto ;} ' ;
222241 } else {
223242 $ captionPosition = 'div.fancybox-caption {position:relative;max-width:50%;margin:0 auto;min-width:480px;padding:15px;}div.fancybox-caption p.caption-title{position:relative;left:0;right:0;margin:0 auto;top:0px;color:#fff;} ' ;
224243 }
@@ -232,8 +251,9 @@ function mfbfw_init() {
232251 echo '
233252<!-- Fancybox for WordPress v ' . $ mfbfw_version . ' -->
234253<style type="text/css">
254+ ' .$ hideCaption .'
235255 ' . ( isset ( $ mfbfw ['overlayShow ' ] ) ? '' : 'div.fancybox-bg{background:transparent !important;} ' ) . '
236- ' .'img.fancybox-image{border-width: ' . $ mfbfw ['padding ' ]. 'px;border-color: ' . $ mfbfw ['paddingColor ' ]. ';border-style:solid;} ' . '
256+ ' . 'img.fancybox-image{border-width: ' . $ mfbfw ['padding ' ] . 'px;border-color: ' . $ mfbfw ['paddingColor ' ] . ';border-style:solid;} ' . '
237257 ' . ( isset ( $ mfbfw ['overlayColor ' ] ) && $ mfbfw ['overlayColor ' ] ? 'div.fancybox-bg{background-color: ' . hexTorgba ( $ mfbfw ['overlayColor ' ], $ mfbfw ['overlayOpacity ' ] ) . ';opacity:1 !important;} ' : '' ) . ( isset ( $ mfbfw ['paddingColor ' ] ) && $ mfbfw ['paddingColor ' ] ? 'div.fancybox-content{border-color: ' . $ mfbfw ['paddingColor ' ] . '} ' : '' ) . '
238258 ' . ( isset ( $ mfbfw ['paddingColor ' ] ) && $ mfbfw ['paddingColor ' ] && $ mfbfw ['titlePosition ' ] == 'inside ' ? 'div#fancybox-title{background-color: ' . $ mfbfw ['paddingColor ' ] . '} ' : '' ) . '
239259 div.fancybox-content{background-color: ' . $ mfbfw ['paddingColor ' ] . ( isset ( $ mfbfw ['border ' ] ) && $ mfbfw ['border ' ] ? ';border:1px solid ' . $ mfbfw ['borderColor ' ] : '' ) . '}
@@ -243,7 +263,7 @@ function mfbfw_init() {
243263 ' . ( isset ( $ mfbfw ['shadowSize ' ] ) && $ mfbfw ['shadowOffset ' ] && $ mfbfw ['shadowOpacity ' ] ? 'div.fancybox-content{box-shadow:0 ' . $ mfbfw ['shadowOffset ' ] . 'px ' . $ mfbfw ['shadowSize ' ] . 'px rgba(0,0,0, ' . $ mfbfw ['shadowOpacity ' ] . ')} ' : '' ) . '
244264 ' . ( isset ( $ mfbfw ['titleShow ' ] ) ? 'div.fancybox-caption p.caption-title{display:inline-block} ' : 'div.fancybox-caption p.caption-title{display:none}div.fancybox-caption{display:none;} ' ) . '
245265 ' . ( isset ( $ mfbfw ['titleSize ' ] ) ? 'div.fancybox-caption p.caption-title{font-size: ' . $ mfbfw ['titleSize ' ] . 'px} ' : 'div.fancybox-caption p.caption-title{font-size:14px} ' ) . '
246- ' . ( isset ( $ mfbfw ['titleColor ' ] ) && $ mfbfw ['titlePosition ' ] == 'inside ' ? 'div.fancybox-caption p.caption-title{color: ' . $ mfbfw ['titleColor ' ] . '} ' : 'div.fancybox-caption p.caption-title{color:#fff} ' ) . '
266+ ' . ( isset ( $ mfbfw ['titleColor ' ] ) && $ mfbfw ['titlePosition ' ] == 'inside ' ? 'div.fancybox-caption p.caption-title{color: ' . $ mfbfw ['titleColor ' ] . '} ' : 'div.fancybox-caption p.caption-title{color:#fff} ' ) . '
247267 ' . ( isset ( $ mfbfw ['titlePosition ' ] ) ? 'div.fancybox-caption {color: ' . $ mfbfw ['titleColor ' ] . '} ' : 'div.fancybox-caption p.caption-title{color:#333333} ' ) . $ captionPosition . '
248268</style> ' ;
249269
@@ -313,28 +333,29 @@ function mfbfw_init() {
313333 "animationEffect": " ' . $ mfbfw ['transitionIn ' ] . '",
314334 "animationDuration": ' . $ mfbfw ['zoomSpeedIn ' ] . ',
315335 "transitionEffect": " ' . $ mfbfw ['transitionEffect ' ] . '",
316- "transitionDuration" : " '. $ mfbfw ['zoomSpeedChange ' ]. '",
336+ "transitionDuration" : " ' . $ mfbfw ['zoomSpeedChange ' ] . '",
317337 "overlayShow": ' . ( isset ( $ mfbfw ['overlayShow ' ] ) && $ mfbfw ['overlayShow ' ] ? 'true ' : 'false ' ) . ',
318338 "overlayOpacity": " ' . $ mfbfw ['overlayOpacity ' ] . '",
319339 "titleShow": ' . ( isset ( $ mfbfw ['titleShow ' ] ) && $ mfbfw ['titleShow ' ] ? 'true ' : 'false ' ) . ',
320340 "titlePosition": " ' . $ mfbfw ['titlePosition ' ] . '",
321341 "keyboard": ' . ( isset ( $ mfbfw ['enableEscapeButton ' ] ) && $ mfbfw ['enableEscapeButton ' ] ? 'true ' : 'false ' ) . ',
322342 "showCloseButton": ' . ( isset ( $ mfbfw ['showCloseButton ' ] ) && $ mfbfw ['showCloseButton ' ] ? 'true ' : 'false ' ) . ',
323343 "arrows": ' . ( isset ( $ mfbfw ['showNavArrows ' ] ) && $ mfbfw ['showNavArrows ' ] ? 'true ' : 'false ' ) . ',
324- "clickSlide ": ' . ( isset ( $ mfbfw ['hideOnContentClick ' ] ) && $ mfbfw ['hideOnContentClick ' ] ? '"close" ' : 'false ' ) . ',
325- "clickContent ": ' . ( isset ( $ mfbfw ['hideOnOverlayClick ' ] ) && $ mfbfw ['hideOnOverlayClick ' ] ? 'function(current, event) {
344+ "clickContent ": ' . ( isset ( $ mfbfw ['hideOnContentClick ' ] ) && $ mfbfw ['hideOnContentClick ' ] ? '"close" ' : 'false ' ) . ',
345+ "clickSlide ": ' . ( isset ( $ mfbfw ['hideOnOverlayClick ' ] ) && $ mfbfw ['hideOnOverlayClick ' ] ? 'function(current, event) {
326346 return current.type === "image" ? "close" : false;
327347 } ' : 'false ' ) . ',
328348 "wheel": ' . ( isset ( $ mfbfw ['mouseWheel ' ] ) && $ mfbfw ['mouseWheel ' ] ? 'true ' : 'false ' ) . ',
329349 ' . $ frameSize . '
330350 "onInit": ' . ( isset ( $ mfbfw ['callbackEnable ' ], $ mfbfw ['callbackOnStart ' ] ) && $ mfbfw ['callbackEnable ' ] && $ mfbfw ['callbackOnStart ' ] ? $ mfbfw ['callbackOnStart ' ] . ', ' : 'function() { }, ' ) . '
331351 "onDeactivate": ' . ( isset ( $ mfbfw ['callbackEnable ' ], $ mfbfw ['callbackOnCancel ' ] ) && $ mfbfw ['callbackEnable ' ] && $ mfbfw ['callbackOnCancel ' ] ? $ mfbfw ['callbackOnCancel ' ] . ', ' : 'function() { }, ' ) . '
332352 "beforeClose": ' . ( isset ( $ mfbfw ['callbackEnable ' ], $ mfbfw ['callbackOnCleanup ' ] ) && $ mfbfw ['callbackEnable ' ] && $ mfbfw ['callbackOnCleanup ' ] ? $ mfbfw ['callbackOnCleanup ' ] . ', ' : 'function() { }, ' ) . '
333- "afterLoad ": ' . ( isset ( $ mfbfw ['callbackEnable ' ], $ mfbfw ['callbackOnComplete ' ] ) && $ mfbfw ['callbackEnable ' ] && $ mfbfw ['callbackOnComplete ' ] ? $ mfbfw ['callbackOnComplete ' ] . ', ' : 'function() { }, ' ) . '
353+ "afterShow ": ' . ( isset ( $ mfbfw ['callbackEnable ' ], $ mfbfw ['callbackOnComplete ' ] ) && $ mfbfw ['callbackEnable ' ] && $ mfbfw ['callbackOnComplete ' ] ? $ mfbfw ['callbackOnComplete ' ] . ', ' : 'function() { }, ' ) . '
334354 "afterClose": ' . ( isset ( $ mfbfw ['callbackEnable ' ], $ mfbfw ['callbackOnClose ' ] ) && $ mfbfw ['callbackEnable ' ] && $ mfbfw ['callbackOnClose ' ] ? $ mfbfw ['callbackOnClose ' ] . ', ' : 'function() { }, ' ) . '
335355 "toolbar": ' . ( isset ( $ mfbfw ['showToolbar ' ] ) && $ mfbfw ['showToolbar ' ] ? 'true ' : 'false ' ) . ',
336356 "preventCaptionOverlap": true,
337357 "caption" : ' . $ caption . ',
358+ "afterLoad" : ' . $ afterLoad . ',
338359 });
339360 ' ;
340361
@@ -498,11 +519,15 @@ function hexTorgba( $hexColor, $opacity ) {
498519 */
499520
500521function fancy_check_if_woocommerce () {
501- if ( get_post_type ( get_the_id () ) == 'product ' ) {
502- return 'product ' ;
503- } else if ( is_shop () ) {
504- return 'shop_page ' ;
522+ if ( class_exists ( 'WooCommerce ' ) ) {
523+ if ( is_shop () ) {
524+ return 'shop_page ' ;
525+ } else if ( get_post_type ( get_the_id () ) == 'product ' ) {
526+ return 'product ' ;
527+ } else {
528+ return 'true ' ;
529+ }
505530 } else {
506- return true ;
531+ return ' true ' ;
507532 }
508533}
0 commit comments