MENU

Wordpress Zibll主题 实现邀请送积分

August 13, 2024 • Read: 48 • Wordpress

function notify_referrer_on_new_registration($new_user_id) {
    // 获取新注册用户的数据
    $new_user_data = get_userdata($new_user_id);
    // 假设我们在用户注册时,通过某种方式保存了推荐人的ID
    // 例如,可能保存在用户的meta数据中
    $referrer_id = get_user_meta($new_user_id, 'referrer_id', true);      
    if (!empty($referrer_id)) {
        // 获取推荐人的数据
        $referrer_data = get_userdata($referrer_id);
        if ($referrer_data) {
            // 设置邮件标题和内容
            $blog_name = get_bloginfo('name');
            $subject = '您推广的好友已成功注册';
            $message = "亲爱的 {$referrer_data->display_name},\n\n";
            $message .= "您推广的好友 {$new_user_data->display_name} 已经成功在 {$blog_name} 网站上注册。\n\n";
            $message .= "访问下面的链接查看您的推广成果:\n";
            $message .= site_url('/referrer-area'); // 替换为您的推荐区域URL
            // 设置邮件头部信息
            $headers = array('Content-Type: text/plain; charset=UTF-8');
            // 发送邮件
            if (!zib_msg_is_allow_receive($user_id, 'ueser_reg')) return;
            wp_mail($referrer_data->user_email, $subject, $message, $headers);
            //给推荐人加积分
            $points_put=30;
            update_user_meta($referrer_id, 'points', get_user_meta($referrer_id, 'points', true) +$points_put); // 假设每次邀请增加10积分
            // 更新用户元数据,设置用户的会员等级以及时间
            $set_level=1;//1为一级会员,2为二级会员
            $set_time  = date('Y-m-d H:i', strtotime('+ 1 day')); //year为年、day是日
            update_user_meta($new_user_id, 'vip_level', $set_level);
            // 更新用户元数据,设置用户的会员过期日期
            update_user_meta($new_user_id, 'vip_exp_date', $set_time);
            $data = array(
                'order_num' => '', 
                'value'     => +$points_put,
                'type'      => '用户推广',
                'desc'      => '在本站用户推广中获得' . $points_put . '积分', 
            );
            zibpay_update_user_points($referrer_id, $data);

        }
    }
}add_action('user_register', 'notify_referrer_on_new_registration', 10, 1);


Archives QR Code Tip
QR Code for this page
Tipping QR Code