多次尝试发现是通过cookie传递邀请值的。
比如邀请链接https://www.51yhyh.com?aff=477 其中477是保存到cookie中在各个页面间传递的。
其中数据直接注册后erphpdown保存到wordpress的用户表的。
wp_update_user 函数主要用于更新用户的核心信息(如用户名、电子邮件和密码),它不直接支持更新用户表的自定义字段
虽然我们可以让用户自定义账号密码等👉wordpress开发教程:优化用户注册体验(自定义密码)
但是不能直接在functions.php中自定义用户表的自定义字段,就不能直接用上面自定义密码的方法添加邀请人的id到用户表。对于用户表的自定义字段,你应该使用 update_user_meta 函数。如果你确实需要将 father_id 存储在用户表中,而不是用户元数据中,你需要使用 wpdb 类来直接更新数据库表。WordPress 提供了 wpdb 类来执行原始的 SQL 查询。
下面是一个示例代码,展示了如何使用 wpdb 类将 father_id 更新到用户表中:
add_action( 'user_register', 'v7v3_register_extra_pass', 100 );
function v7v3_register_extra_pass( $user_id ){
// 检查 father_id 是否已设置且不为空
if ( isset($_POST['father_id']) && $_POST['father_id'] !== '' ){
global $wpdb;
// 构建更新 SQL 语句
$sql = $wpdb->prepare(
"UPDATE $wpdb->users SET father_id = %s WHERE ID = %d",
$_POST['father_id'],
$user_id
);
// 执行更新操作
$wpdb->query($sql);
// 检查是否更新成功
if ( $wpdb->last_query === $sql ) {
// 更新成功
} else {
// 更新失败,可以记录错误或执行其他操作
}
}
}
如何查看cookie
直接F12——网络——选择页面——cookie
👉浏览器查看Cookie方法大全,网站Cookie查看方法,Chrome查看Cookie,IE查看Cookie_浏览器怎么获取cookie-CSDN博客
如何显示cookie中保存的邀请人id
要显示邀请码,比如在cookie中邀请人的cookie名称: yaoqing 值: 477。用以下代码显示出来,样式自己修改
<label for="father_id" style="font-size:11px">邀请ID:<br/>
<input name="referrer_id_raw" value="<?php echo isset($_COOKIE['yaoqing']) ? $_COOKIE['yaoqing'] : ''; ?>" readonly/>
</label>
其中readonly是让显示框仅可读不可修改
















