Fancybox负载与Wordpress中的cookie

时间:2014-10-06 19:35:07

标签: jquery wordpress cookies fancybox

我正在尝试在Fancybox的主页上加载视频。并且如果您在过去30天内访问过网站,请使用cookie来加载它。

这是一个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 -->

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

我不认为你的cookie脚本是一个jQuery插件。请改为Cookies('mycookie', 'true', { expires: 30});

答案 1 :(得分: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 -->