我在下面有这个网站,我正在玩一些Wordpress& php cookies。 http://johnnylai.me/lotus
我想要做的是,当用户第一次进入时我希望他们在首页选择两个链接中的一个(这是一个单独的WP安装)。下次同一个用户回到网站时,我不希望他们再看到首页(b 4 cookie被删除或过期),我希望他们直接转到两个网站中的一个 - http://johnnylai.me/lotus/virksonhed或http://johnnylai.me/lotus/privat - 取决于第一次点击的内容。
我知道我需要一些饼干的东西,但在哪里放置文件以及如何正确地做到这一点我不确定。
我正在考虑在WP安装中有一个名为function.php的文件中的salotion / php代码,该文件具有首页(http://johnnylai.me/lotus),但不知道这是否是正确的方法
一些代码示例会很好:)
感谢任何帮助,谢谢!
<?php
$expire=time()+60*60*24*30;
setcookie("cat", "/cat1", $expire);
// But this is something with categoies in WP, that's not what i need.
?>
还
<?php
function has_auth_cookie()
{
// See if cookie is set
if(isset($_COOKIE['lotus'])){
// Do nothing
header('Location: johnnylai.me/lotus/???');
}
else
{
// Do Something else
header('Location: johnnylai.me/lotus/');
}
}
add_action('http://johnnylai.me/lotus/????', 'has_auth_cookie');
?>
答案 0 :(得分:0)
注意:
当你正在做标题()并且你将它们留在现场时你可以使用本地路径,所以
标题('位置:/ lotus /');
因为$ _COOKIE是一个数组,当你检查$ _COOKIE而不是isset()时使用
如果(!空($ _ COOKIE [ 'cookiename']))
如果出于某种原因,您希望有人再次看到该主页,则需要取消设置该Cookie。
setcookie(“cookiename”,“”,time() - 3600);
如果人们不接受cookie,除非您有其他方式识别,否则不会重定向。
PHP代码:
<?php
if(empty($_COOKIE['TestCookie'])){
if(!empty($_GET['c'])){
$cVar = $_GET['c'];
//time to set some cookies
switch($cVar){
case '2':
setcookie("TestCookie", '2');
echo "Cookie 2 set. Reload the page.";
break;
default:
//also covers hacking attempts
setcookie("TestCookie", '1');
echo "Cookie 1 set. Reload the page.";
}
} else {
// They're possibly a first time visitor or someone offsite
echo '<!doctype html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Cookie Check</title>
</head>
<body>
<a href="?c=1">Set cookie 1</a>
<a href="?c=2">Set cookie 2</a>
</body>
</html>';
}
} else {
switch($_COOKIE['TestCookie']){
case '2':
//Send them to location 2
header('Location: http://www.google.com/');
break;
default:
//Send the to location 1
header('Location: http://www.yahoo.com/');
}
}
?>