今天分享一个纯代码实现在B2商城购买指定商品,赠送相应等级的会员并给予专用认证称号的代码!
将以下代码插入7b2主题或者子主题的functions.php即可。
//购买指定产品自动添加授权 add_action('b2_order_gx_action','buy_give_vip',10,1); function buy_give_vip($data) { //购买商品赠送会员开关,1为开,0为关 $give_vip_open=1; //购买指定的商品id在此更改,“931,932”表示购买ID为931或932的商品赠送会员,多个商品用逗号隔开。 $goods_id=array(151); //赠送的会员在此更改,vip0 vip1 vip2 vip3分别对应第一到第四种vip。 $vip_level='vip0'; $post_id=$data['post_id']; $user_id=$data['user_id']; if (!$user_id) { return; } $vip_data = b2_get_option('normal_user','user_vip_group'); $vip = get_user_meta($user_id,'zrz_vip',true); $vip = (string)preg_replace('/\D/s','',$vip); $day = $vip_data[$vip]; $day = $day['time']; $current_time = current_time("Y-m-d H:i:s"); if($give_vip_open==1 && in_array($post_id, $goods_id)) { update_user_meta($user_id,'zrz_vip',$vip_level); update_user_meta($user_id,'zrz_vip_time',$day); } //购买商品赠送认证称号开关,1为开,0为关 $give_title_open=1; //购买指定的商品id在此更改,“123,212”表示购买ID为931或932的商品赠送认证称号,多个商品用逗号隔开。 $verify_goods_id=array(152); //赠送的认证名称。 $verify_title='官方正版户'; global $wpdb; $table_name = $wpdb->prefix . 'b2_verify'; $id_verify=$wpdb->get_results("select * from $table_name where user_id=$user_id;"); $verify_data = array( 'user_id' => $user_id, 'title' => $vip_title, 'status' => 2, 'date'=> $current_time, 'money'=> 1, 'identification'=>1, 'mp'=>1, 'verified'=>1, ); $verify_data2 = array( 'title' => $vip_title, 'status' => 2, 'date'=> $current_time, 'money'=> 1, 'identification'=>1, 'mp'=>1, 'verified'=>1, ); if($give_title_open==1 && in_array($post_id, $verify_goods_id)) { update_user_meta($user_id,'b2_title',$verify_title); do_action('b2_submit_verify_after',$data); do_action('b2_user_rebuild_title', $user_id); if (!$id_verify){ $wpdb->insert($table_name, $verify_data); }else{ $wpdb->update($table_name,$verify_data2,array( 'user_id' => $user_id )); } } return $data; }
原文作者子比兔美化官网 使用中有任何问题可以文末留言
提示:本文最后更新时间为 2024-11-17 如文中内容素材有错误或者已经失效,请留言告知。
wp 专家啊
第一个网站就是wp的用了几年用老y过后还用过易优 21年有转回wp😊