PHP редирект через n секунд для определенных страниц
Как сделать на php редирект через определенное время и только на определенных страницах сайта(сайт на wordpress)
Чтобы страницы выдергивались рандомно из файла .txt
Ответы (2 шт):
<script>
function redirect()
{
window.location.href = 'https://google.com';
}
setTimeOut(redirect, 3000)
</script>
Редирект на google.com через 3 секунды
На самом деле всё достаточно просто
$sites = file("ссылка_на_текстовый_файл.txt")
Эта функция получит все строки текстового файла и поместит их в массив и дальше нам остаётся только добавить проверку. Тут можем обойтись обычным if.
$link = $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
if (in_array($link, sites)) {
sleep(30);
header('Location:page.html');
}
Если сайт есть в списке, то редирект произойдёт через 30 секунд.
Дополняю, отвечая на вопрос в комментарий: Если нужно перенаправить на рандомный сайт - получаем массив сайтов, на которые нужно перенаправлять (допустим они так же находятся в текстовом файле, соответственно получаем массив способом, аналогичным описанному выше).
Массив назовём "locationTo". Header будет выглядеть следующим образом:
header('Location:' . $locationTo[array_rand($locationTo)]);
array_rand - возвращает один или несколько (если вторым аргументом указать необходимое количество) случайных ключей из массива