首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用WordPress设置cookie

用WordPress设置cookie
EN

Stack Overflow用户
提问于 2012-09-29 16:39:01
回答 1查看 333关注 0票数 0

可能重复: Cookie在PHP中不持久化?

我的目标是:当用户访问我的网站登陆页面并选择他们的城市(x或y)时,我想设置一个cookie来记住这个选择,所以下次他们访问登陆页面时,它会直接重定向到他们的城市。我目前的代码是:

登陆页:

代码语言:javascript
复制
<?php
if (isset($_COOKIE['cambridge'])) {
    header('Location: http://cambridge.guestvibe.com');
}
else if (isset($_COOKIE['oxford'])) {
    header('Location: http://oxford.guestvibe.com');
}
?>

特定城市页面(一个例子):

代码语言:javascript
复制
<?php setcookie("Cambridge",""); ?>

我也试过:

代码语言:javascript
复制
<?php setcookie("Cambridge",""); ?>

这不适合我,但这是我第一次用曲奇饼干。你知道怎么回事吗?

编辑

接受的答案解决了一半的问题,但是对于WordPress来说,也需要添加一些代码,这里解释道。

最后代码是:

代码语言:javascript
复制
setcookie('city','Cambridge',time()+86400*365, "/", ".guestvibe.com");
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-29 17:05:19

这是因为当浏览器关闭时,setcookie()的使用必然会过期。setCookie有第三个参数,您应该使用它来设置它何时过期。默认情况下,关闭浏览器时不使用此选项。下面是一个示例,说明如何设置365天后到期的cookie:

代码语言:javascript
复制
setcookie('city','Cambridge',time()+86400*365); // remember for 365 days.

然后,将代码更改为如下内容:

代码语言:javascript
复制
if ($_COOKIE['city'] == 'Cambridge') {
    // redirect
} else if ($_COOKIE['city'] == 'Oxford') {
    // redirect
}

有关设置cookies的更多信息,请查看赛特曲奇的documentation。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12654454

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档