【发布时间】:2019-12-05 04:35:42
【问题描述】:
为什么?
我正在尝试使用我的 WordPress 网站设置 Adword 广告系列,这很简单,但我希望能够根据他们是否使用 AdWords 或 Bing/Google SERPS 访问该网站来切换联系表格。
所以我们的想法是,如果他们访问https://example.com/landing-page/,他们将到达一个页面,其中包含不同的联系电话和电子邮件表格,其标题表明他们来自 Adwords,所有这些都是直截了当的,但是,如果他们点击菜单远离着陆页,他们将获得标准号码和标准电子邮件表格,这使得跟踪过程有点困难。
设置临时 cookie
因此,通过使用自定义 WordPress page template files,当访问者访问着陆页时,它会使用以下方式设置 cookie:
<?php
// 60 Seconds, live environment set to 6000 (1 hour)
$date_of_expiry = time() + 60 ;
setcookie( "adwords-customer", "adwords-visit", $date_of_expiry );
?>
检查 cookie 并执行 A 或 B
然后在整个网站的其余部分(不在登录页面上),它会检查 cookie 是否存在,如果存在则为 A,如果不存在则为 B,代码如下:
<?php
if(!isset($_COOKIE['adwords-customer']) || ($_COOKIE['adwords-customer'] != 'true')){
echo "cookie set";
} else {
echo "cookie not set";
}
?>
问题
结果总是“cookie set”,永远不会回显“cookie not set”,提前感谢您的帮助。
【问题讨论】:
-
!= 'true'你在这里检查字符串还是布尔值? -
你需要在这里反转你的条件,这就是原因。
-
我认为这是一个错字。
-
您正在检查 cookie 是否不存在,但您正在返回“cookie set”。可能您的 cookie 设置代码无法正常工作。
-
嗨 Funk,对不起,我是个初学者,想知道错字在哪里?
标签: php if-statement cookies setcookie