2014-10-06 184 views
0

我試圖在Fancybox的主頁上加載視頻。如果您在過去30天內訪問過網站,請使用Cookie不加載。在Wordpress中加載Cookie的Fancybox

這是一個WordPress的網站,所以我把所有的「$」改爲「jQuery」。我將所有這些腳本完全按照您在Footer.php文件底部關閉body標籤之前的最後一件事情來看待。我收到錯誤「jQuery.cookie不是函數」。我不是一個真正的編碼器,所以假設我不知道任何基本的腳本。

我認爲這應該可行,但事實並非如此。

<!-- Start video popup cookie script --> 
<script src='http://cdn.jsdelivr.net/cookies.js/0.4.0/cookies.min.js'></script> 

<script> 
jQuery(document).ready(function(jQuery) { 
jQuery(function() { 
    if (jQuery.cookie('mycookie')==='true') { 
     // it hasn't been thirty days yet 
    } else { 
    jQuery.fancybox(
     'http://www.youtube.com/embed/oWCN8HvsULg?rel=0&wmode=transparent&autoplay=1', 
     { 
      'autoDimensions' : false, 
      'width'    : 800, 
      'height'   : 600, 
      'transitionIn'  : 'none', 
      'transitionOut'  : 'none' 
     } 
    ); 
} 
}); 

// set cookie to expire in 30 days 
jQuery.cookie('mycookie', 'true', { expires: 30}); 
}); 
</script> 
<!--end Video popup --> 

感謝您的幫助。

+0

假的問題,你之前的cookie的插件加載jQuery庫? – benjasHu 2014-10-06 20:32:04

+0

BenjasHu,以上所有代碼只出現在之上。所以是的?我很確定它是,但它在Wordpress安裝的footer.php文件中。 – user2636033 2014-10-06 22:09:47

回答

0

我不認爲你的cookie腳本是一個jQuery插件。改爲嘗試Cookies('mycookie', 'true', { expires: 30});

+0

克萊頓,這裏是一個鏈接到jQuery Cookie腳本... http://cdn.jsdelivr.net/cookies.js/0.4.0/cookies.min.js ...這是錯誤的嗎?謝謝。 我沒有嘗試過你的建議沒有區別。 – user2636033 2014-10-06 22:15:13

+0

您可以使用該腳本。你只是說錯了。這不是一個jQuery插件,所以不要使用jQuery.cookie – 2014-10-06 22:16:24

+0

Ohhhh。哇,你是對的。我不知道它不是jQuery Cookies。謝謝。我會看看cookies.js的文檔。 – user2636033 2014-10-06 22:19:20

0

我明白了。我需要在視頻鏈接中添加一個id(#vidBtnDan)(未在下面顯示),並將文件jquery.cookies.js的名稱更改爲jq.cookies.js,Wordpress將不會使用jquery.cookies.js原因。此外,Wordpress不會在代碼中使用$,因此您需要將所有「$」更改爲「jQuery」。

這裏是代碼...

<!-- start video popup scripts --> 
<script src="wp-includes/js/jquery/jq.cookie.js"></script> 

<a id="inline" href="#vidPop"> 
<script type="text/javascript" src="<?php bloginfo('template_directory'); ?>/wp-includes/js/jquery/jq.cookie.js"></script> 
<script type="text/javascript"> 
     jQuery(document).ready(function() { 
     if(jQuery.cookie("modal") != 'true') { 
       jQuery("#vidBtnDan").fancybox({padding:0, margin:0}).trigger('click'); 
     jQuery.cookie("modal", "true", { path: '/', expires: 30 }); 
    } 
}); 
</script> 
<!-- end video scripts -->