只是一个警告,我对PHP和编码一般都是新手,所以请耐心等待。
以下是我尝试做的事情: 我们公司的wordpress网站(http://www.vectormedia.com)使用灯箱在主页加载时显示视频。我想这样做,以便在过去一周内访问过该网站时,该视频将不会显示。
这是我的代码:
在我的wordpress主题的header.php的最顶部是创建cookie的功能:
<?php
function cookies() //Sets cookie function for video
{
$expire = time()+60*60*24*7; //cookie expiration (7days)
setcookie("video", "vector", $expire);
}
?>
这是将加载嵌入灯箱中的视频的变量(也位于header.php中):
<?php
//defines javaload as lightbox script with embeded video
$javaload = '<script type="text/javascript">
jQuery(document).ready(function(){
jQuery.lightbox("https://www.vimeo.com/36697123");
});
</script>'
?>
这是位于footer.php中的If语句,用于检查cookie是否存在以及我们是否在主页上,如果为true,则加载视频并设置cookie:
<?php
if ( !isset($_COOKIE["video"])) && (is_front_page());
echo $javaload
echo cookies();
?>
问题是:
a)这段代码根本不起作用 b)它也破坏了我的子菜单翻转
我的问题是:
a)为什么这不起作用?
b)为什么它会破坏我的菜单?
c)有没有更好的方法来实现这一目标?
任何帮助将不胜感激,提前感谢。
答案 0 :(得分:0)
分号后:
echo $ javaload
并删除if语句后的分号,如果只想在没有cookie时设置cookie,则使用{}作为if标记。
答案 1 :(得分:0)
应该是
<?php
if ( !isset($_COOKIE["video"] && is_front_page()) {
echo $javaload;
echo cookies();
}
?>
但是我不确定在这种情况下会触发灯箱你必须这样做吗
<script>
function play_video() {
jQuery.lightbox("https://www.vimeo.com/36697123");
}
</script>
然后更改$ javaload以回显play_video();