function updateSubscription() { $d = get_option('chargify'); $u = wp_get_current_user(); if (!is_array($u->chargify_level)) { update_user_meta($u->ID, 'chargify_level', array($u->chargify_level => strtotime($u->user_registered))); } $opt = array("api_key" => $d["chargifyApiKey"], "test_api_key" => $d["chargifyTestApiKey"], "domain" => $d["chargifyDomain"], "test_domain" => $d["chargifyTestDomain"], "test_mode" => $d["chargifyMode"] == 'test' ? TRUE : FALSE); $connector = new ChargifyConnector($opt); $subs = $connector->getSubscriptionsByCustomerID($u->chargify_custid); if (is_array($subs)) { foreach ($subs as $sub) { if ($sub->getState() == 'canceled') { $levels = get_user_meta($u->ID, 'chargify_level', true); unset($levels[$sub->getProduct()->getHandle()]); update_user_meta($u->ID, 'chargify_level', $levels); } } } update_user_meta($u->ID, 'chargify_access_check', strtotime("+1 days")); }