Если cookie отсутствует, показать видео - PullRequest
0 голосов
/ 16 февраля 2012

Просто предупреждение, я совершенно новичок в PHP и в целом в кодировании, поэтому, пожалуйста, потерпите меня.

Вот что я пытаюсь сделать: WordPress веб-сайт нашей компании (http://www.vectormedia.com) использует лайтбокс для отображения видео при загрузке домашней страницы. Я хотел бы сделать так, чтобы, если вы посетили сайт на прошлой неделе, видео не будет отображаться.

Вот мой код:

В самом верху header.php моей темы WordPress находится функция для создания 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>'   
?>

Вот оператор If, расположенный в файле footer.php, который проверяет, существует ли cookie, и есть ли мы на домашней странице, если true, тогда загрузите видео и установите cookie:

<?php
if ( !isset($_COOKIE["video"])) && (is_front_page());
echo $javaload
echo cookies();
?>

Проблемы:

а) этот код просто не работает.
б) это также нарушает мои опрокидывания в подменю.

И мои вопросы:

а) почему это не работает?
б) почему это нарушает мое меню?
в) есть ли лучший способ сделать это?

Любая помощь будет принята с благодарностью, заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 16 февраля 2012

Должно быть

<?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 на echo out play_video ();

0 голосов
/ 16 февраля 2012

точка с запятой после:

echo $ javaload

и удалите точку с запятой после оператора if и используйте {} для тега if, если вы хотите установить cookie только припеченья нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...