我有将用户带到网站的 Facebook 广告。每个广告都有不同的跟踪 ID:www.scaredycut.com/index.php?azn=TRACKING_ID
进入网站后,跟踪 ID 会插入到亚马逊的链接中(以便在购买商品时表明推荐销售)。如果用户直接访问该网站(而不是通过广告),他们会收到跟踪 ID
我设置了两道防线:首先,创建一个包含 TRACKING_ID 的 cookie。万一 cookie 被禁用,url 标签仍然存在(azn=TRACKING_ID),可供抓取。
在 index.php 中,一个重定向到主页的初始 php 文件:
# capture TRACKING_ID from URL
$actual_link = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
$parsed_url = parse_url($actual_link);
$azn = substr($parsed_url[query], 4);
# save tag into a cookie set to expire in 30 days
setcookie ("ScaredyCut_AmazonReferral1", $azn,time()+60*60*24*30);
在 Wordpress 的 functions.php 中:
# create TRACKING_ID variable from url tag
$urltrackingID = $_GET["azn"];
# create TRACKING_ID variable from cookie
$cookietrackingID = $_COOKIE["ScaredyCut_AmazonReferral1"];
# logic: which variable to use?
if ($cookietrackingID == NULL) { // if there's no cookie,
if ($urltrackingID == NULL) { // if they came directly,
$trackingID = "scaredycut-direct"; // use tracking ID "scaredycut-direct"
} else { // otherwise, cookies are disabled, so use url tracking ID
$trackingID = $urltrackingID;
}
} else { // otherwise, cookie are enabled, so use cookie tracking ID
$trackingID = $cookietrackingID;
}
在 header.php 中:
# declare global tracking ID var
<?php
global $trackingID;
?>
然后,我只需将 $trackingID 插入到链接的 href 中。(我优先考虑饼干。如果他们有饼干,我宁愿做一个饼干,以防他们离开并稍后回来。)
在大多数情况下,我的方法是有效的(对于我这个新手来说令人惊讶)。会话被正确跟踪,但我非常怀疑某些会话被错误地跟踪为“scaredycut-direct”,而不是其广告特定的跟踪 ID。
该网站在大多数情况下是一个页面。用户没有办法通过导航到另一个页面来丢失 url 标签。
有没有办法将会话错误地标记为“scaredycut-direct”,并绕过 cookie 和 url 标记方法?还有另一种方法可以做到这一点吗?
非常感谢帮忙。