Php 在整个站点上为a/B测试表单创建cookie/session变量
我正在测试两种不同的表格,看看哪种表格能产生最好的潜在客户,但我很难找到我需要的地方。首先,我们使用WordPress,这两种表单是全局的(与登录页无关) 使用PHP,我将生成一个0或1的数字。如果0表格A加载,如果1表格B加载。所以我开始工作了,然后我研究了如何做一个cookie来存储这个数字,这样当网站访问者浏览整个网站时,他们的表单是相同的。当前加载的每个页面都会生成一个新的号码,因此,如果单击contact并稍后再次返回,他们将看到这两个表单。现在和饼干是一样的Php 在整个站点上为a/B测试表单创建cookie/session变量,php,wordpress,Php,Wordpress,我正在测试两种不同的表格,看看哪种表格能产生最好的潜在客户,但我很难找到我需要的地方。首先,我们使用WordPress,这两种表单是全局的(与登录页无关) 使用PHP,我将生成一个0或1的数字。如果0表格A加载,如果1表格B加载。所以我开始工作了,然后我研究了如何做一个cookie来存储这个数字,这样当网站访问者浏览整个网站时,他们的表单是相同的。当前加载的每个页面都会生成一个新的号码,因此,如果单击contact并稍后再次返回,他们将看到这两个表单。现在和饼干是一样的 $aB = rand(0
$aB = rand(0,1)
setcookie('user', $aB, time() + (86400*7));
if(!isset($_COOKIE['user'])){
echo do_shortcode('[gravityform shortcode form B]');
} else {
echo do_shortcode('[gravityform shortcode form A]');
}
我正在研究如何进行会话,但我仍然在想,如果网站访问者获得0,我如何在他们浏览整个网站时跟踪他们,直到他们关闭或cookie/会话过期。在对cookies进行了一些测试之后,我意识到这种方法可能不是最好的。我正在寻找最好的方式来附加这个问题的建议,谢谢 使用functions.php中的以下代码在网站中创建自定义设置字段
add_action('admin_menu', 'add_gcf_interface');
function add_gcf_interface() {
add_options_page('form option', 'form option', '8', 'functions', 'editglobalcustomfields');
}
function editglobalcustomfields() {
?>
<div class='wrap'>
<form method="post" action="options.php">
<?php wp_nonce_field('update-options') ?>
<p><strong>Home page mode:</strong><br />
<input type="number" name="alterid" size="5" min="1" max="2" value="<?php echo get_option('alterid'); ?>" /></p>
<p><input type="submit" name="Submit" value="Update Options" /></p>
<input type="hidden" name="action" value="update" />
<input type="hidden" name="page_options" value="alterid" />
</form>
</div>
<?php
}
session_start();
if($_SESSION['homepagenew'] == '' && $_SESSION['homepageold'] == '')
{
if(get_option('alterid') == 1){
$_SESSION['homepagenew'] = get_option('alterid');
update_option('alterid', 2 );
}
else if(get_option('alterid') == 2){
$_SESSION['homepageold'] = get_option('alterid');
update_option('alterid', 1 );
}
}
if($_SESSION['homepagenew'] == 1)
{
echo do_shortcode('[gravityform shortcode form B]'); // form option 1
exit;
}
else if($_SESSION['homepageold'] == 2){
echo do_shortcode('[gravityform shortcode form A]'); // form option 2
exit;
}