我正在尝试使一个网站同时具有 Wix 和独立桌面版本。但是,当将此网站加载到 Wix iFrame 时,我遇到了 Wix 版本的问题。
当 IF 语句为真时,应自动重定向用户,这意味着如果您在 Wix iFrame 中访问此网站,则必须执行以“header”开头的代码行,因为 IF 语句返回真。
if(isset($_GET[ 'instance' ], $_GET[ 'siteUrl' ], $_GET['locale']))
{
$value = 1;
setcookie("IsWixUser", $value, time()+3600);
header('Location: app.php?show=social_manager');
}
else
{
$value = -1;
setcookie("IsWixUser", $value, time()+3600);
}
当您第一次使用 Wix 加载我的网站时完全没有 cookie 时,情况并非如此。使用萤火虫我可以检查资源并看到cookie“IsWixUser”已正确执行以保持$ 1的值,因此setcookie()第一次完美运行,但浏览器只是决定跳过header()函数并且根本不执行。
header() 函数仅在刷新整个 Wix 页面以重新加载 iFrame 后才起作用,最后 header() 函数仅在过去将 cookie“IsWixUser”设置为 1 时才起作用。
这可能只是 Drupal 的问题吗?您在上面看到的那行代码位于 Drupal 的 index.php 的顶部。