Нужно создать cookie, чтобы отключить автоматическое воспроизведение видео для постоянных посетителей.

Мне нужно иметь возможность отключить автоигру на vimeo для постоянных посетителей. Я знаю, что автоигра для некоторых нет, но для наших первых посетителей мы обнаружили, что это очень полезно. Но для тех, кто часто посещает наш сайт, им не нужен автозапуск. Может ли один из вас помочь мне с этим кодом? Я уверен, что это php-код, который может сработать, но он выше моего уровня знаний. Заранее спасибо! Мой сайт www.destinychurchjacksonville.com, и видео находится на первой странице.

-1

Решение

Поскольку вы не знакомы с тем, как использовать куки, пожалуйста, обратитесь к документации PHP по куки: http://php.net/manual/en/function.setcookie.php

Извините, я не совсем знаком с Vimeo, так как я всегда использую Youtube. Тем не менее, я считаю, что если вы используете PHP для динамического рендеринга iframe. Ваша функция автозапуска будет частью пирога.

Я проверил исходный код вашего сайта, я считаю, что ссылка iFrame src в этом формате: http://player.vimeo.com/video/xxxxxxxxx?autoplay=1. Обратите внимание, что в ссылке есть переменная GET [], называемая autoplay, вы можете использовать PHP для управления ссылкой, когда cookie установлен или не установлен.

if(isset($_COOKIE["name"])){
$link = "http://player.vimeo.com/video/xxxxxxxxx"
} else {
$link = "http://player.vimeo.com/video/xxxxxxxxx?autoplay=1"
}
//proceed to render iFrame with $link var.


echo "<iframe src=$link width='500' height='281' frameborder='0' webkitAllowFullScreen mozallowfullscreen allowFullScreen> </iframe>"
0

Другие решения

Если на вашем сайте есть участники, которые могут зарегистрироваться, настоятельно рекомендуется просто сохранить их настройки в базе данных.

Если это не то, чего вы пытаетесь достичь, то это должно сделать это:

setcookie('autoplay', false, time() + 3600, "/");
$_COOKIE['autoplay'] = false;

Это создает печенье под названием autoplay это доступно по всему каталогу сайта из-за четвертого аргумента и истекает через 1 час. Большинство сайтов для такого рода предпочтений экономят в течение 80 дней, поэтому вы должны использовать time() + 6912000,

Чтобы проверить, стоит ли выполнять автозапуск:

<?php
if (isset($_COOKIE['autoplay']) && $_COOKIE['autoplay'] == false) {
//Don't do autoplay
?>

Еще лучше, если вы действительно хотите, чтобы любой возвращающийся посетитель не получал автозапуск, это хранить любые IP address который посещал ваш сайт, хотя это довольно ограничительно, так как многие пользователи не помнят свое первое посещение или, возможно, первое посещение имело отказ. Вы можете сделать это, создав таблицу базы данных, в которой хранятся все IP-адреса, посещавшие ваш сайт, и, если в таблице указан IP-адрес текущего пользователя, отключите автозапуск.

<?php
$ip = $_SERVER['REMOTE_ADDR'];
$sql = "SELECT ip FROM ip_addresses WHERE ip = '$ip'";
$result = $dbc->query($sql);
if ($result->num_rows > 0) {
//Autoplay off
}
?>

Вы можете прочитать о куки здесь:
http://php.net/manual/en/features.cookies.php

Изменить: Чтобы выполнить именно то, что вы хотите, я не слишком читал API Vimeo, если честно, но другой ответ предполагает, что автоигра GET переменная, и если это правильно, и вы можете манипулировать им в URL, вы можете сделать это:

<?php
if (isset($_COOKIE['autoplay']) && $_COOKIE['autoplay'] == false) {
//No autoplay
$link = 'http://player.vimeo.com/video/xxxxxxxxx?autoplay=0';
}
else {
//Yes autoplay
$link = 'http://player.vimeo.com/video/xxxxxxxxx?autoplay=1';
//Since this visitor is new and next time will be returning, create cookie
setcookie('autoplay', false, time() + 3600, "/");
$_COOKIE['autoplay'] = false;
}
?>
<html>
<iframe src="<?php echo $link;?>"></iframe>
//Here we echo out the link variable we dynamically generated above in PHP based on user preferences and give it to HTML.

Если вы хотите реализовать IP-адрес, вы должны сделать предложенное выше и проверить, если выражение $result->num_rows == 1 это правда

0

По вопросам рекламы [email protected]