【发布时间】:2015-12-07 09:00:02
【问题描述】:
这是我的代码:
function set_newuser_cookie() {
if ( !is_admin() && !isset($_COOKIE['domain_newvisitor'])) {
setcookie('domain_newvisitor', 1, time()+3600*24*100, '/', 'domain.com', false);
}
}
add_action( 'init', 'set_newuser_cookie');
使用此代码 cookie 效果很好,但是当我通过此 javascript 代码检查 cookie 存在时(需要检查我们是否有 cookie 以在 javascript 代码的其他地方使用它):
var isCookie = document.cookie.match(/^(.*;)?domain_newvisitor=[^;]+(.*)?$/);
if(isCookie){
console.log('yes');
}else{
console.log('no');
}
它总是在控制台日志中显示“是”,即使是在删除 cookie 并第一次访问网站时。仅当用户第二次打开页面时,如何更改 php 代码以创建 cookie。
【问题讨论】:
-
只是想知道您是否每次都在第一个代码之后运行第二个代码?
-
不应该是其他方式检查cookie是否不存在然后创建否则离开它?
-
将
isCookie记录到控制台,查看每种情况下它是什么/包含什么。 -
你能告诉我你的意思是“离开它”吗?你的意思是这个 ? @A.J
-
我按照你说的做了,对于这个 cookie 'domain_newvisitor' 它是一样的。第一次和第二次都存在@CBroe
标签: javascript php wordpress cookies