/** * Triggered when a order_created event is received via webhook ping */ function memberful_wp_hook_order_sync($data) { $mapper = new Memberful_User_Map(); $user = $mapper->map($data->order->member); $details = memberful_api_member($data->order->member->id); Memberful_Wp_User_Products::sync($user->ID, $details->products); Memberful_Wp_User_Subscriptions::sync($user->ID, $details->subscriptions); }
function memberful_wp_sync_member_from_memberful($member_id, $mapping_context = array()) { $member_id = (int) $member_id; $account = memberful_api_member($member_id); if (is_wp_error($account)) { memberful_wp_record_error(array('error' => $account->get_error_messages())); return $account; } return memberful_wp_sync_member_account($account, $mapping_context); }