当前位置: 首页>>代码示例>>PHP>>正文


PHP WP_Http::get方法代码示例

本文整理汇总了PHP中WP_Http::get方法的典型用法代码示例。如果您正苦于以下问题:PHP WP_Http::get方法的具体用法?PHP WP_Http::get怎么用?PHP WP_Http::get使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在WP_Http的用法示例。


在下文中一共展示了WP_Http::get方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: testReturnsResultOfPassingWpDataToFactoryCreate

 public function testReturnsResultOfPassingWpDataToFactoryCreate()
 {
     $wpData = ['response' => ['code' => 201]];
     $this->wpHttp->get('uri', [])->willReturn($wpData);
     $this->factory->create($wpData)->shouldBeCalled();
     $this->request->get('uri');
 }
开发者ID:netrivet,项目名称:wp-http,代码行数:7,代码来源:RequestTest.php

示例2: provide_coordinates_for_address

 /**
  * @param string|array $address
  */
 public function provide_coordinates_for_address($address)
 {
     if (is_array($address)) {
         $address = implode(', ', array_filter(array_map('trim', $address)));
     }
     $address = trim($address);
     if ($location = $this->get_resolved($address)) {
         return $location;
     }
     $base_request_url = trailingslashit($this->get_google_api_base()) . $this->get_google_api_json_format();
     $url = esc_url(add_query_arg(array('address' => $address), $base_request_url));
     $response = $this->http->get($url);
     if (is_wp_error($response)) {
         return false;
     }
     $decoded = json_decode($response['body'], true);
     if (empty($decoded['status']) || 'OK' !== $decoded['status']) {
         return false;
     }
     if (empty($decoded['results'][0]['place_id']) || empty($decoded['results'][0]['geometry']['location']['lat']) || empty($decoded['results'][0]['geometry']['location']['lng'])) {
         return false;
     }
     $location = $decoded['results'][0]['geometry']['location'];
     $updated_transient = array_merge($this->get_transient(), array($address => $location));
     set_transient(self::$transient_name, $updated_transient);
     $this->transient = $updated_transient;
     return $location;
 }
开发者ID:nullify005,项目名称:shcc-website,代码行数:31,代码来源:Coordinates_Provider.php

示例3: getFeed

 /**
  * Gets an instagram feed
  *
  * @param string $username Username
  * @param integer $limit Number of images to return
  * @return array
  */
 protected function getFeed($username = null, $limit = 5)
 {
     if (empty($username)) {
         return array();
     }
     $results = get_transient('InstagramWidget::getFeed');
     if ($results === false) {
         $request = new WP_Http();
         $response = $request->get("http://ink361.com/feed/user/{$username}");
         $results = array();
         if (!is_a($response, 'WP_Error')) {
             try {
                 $resultsXml = new SimpleXMLElement($response['body']);
                 foreach ($resultsXml->channel[0]->item as $node) {
                     // ink361 sends <a href="ink361.com"><img src="image.jpg"></a>
                     try {
                         $imageNode = new DOMDocument();
                         $imageNode->loadHTML($node->description);
                         $img = $imageNode->getElementsByTagName('img');
                         $results[] = $img->item(0)->getAttribute('src');
                         if (count($results) == $limit) {
                             break;
                         }
                     } catch (Exception $e) {
                     }
                 }
                 set_transient('InstagramWidget::getFeed', $results, HOUR_IN_SECONDS);
             } catch (Exception $e) {
             }
         }
     }
     return $results;
 }
开发者ID:spiff888,项目名称:rockharbor,代码行数:40,代码来源:instagram_widget.php

示例4: from_remote

 private function from_remote()
 {
     $data = array();
     $url = 'https://api.wpengine.com/1.2/?method=disk-usage&account_name=' . PWP_NAME . '&wpe_apikey=' . WPE_APIKEY . '&blog_id=all';
     $http = new WP_Http();
     $msg = $http->get($url);
     if (!is_a($msg, 'WP_Error') && isset($msg['body'])) {
         $data = json_decode($msg['body'], TRUE);
     }
     return $data;
 }
开发者ID:tconte252,项目名称:haute-inhabit,代码行数:11,代码来源:class.wpeapi.php

示例5: _download_framework

 /**
  * {@inheritdoc}
  * @internal
  */
 public function _download_framework($version, $wp_filesystem_download_directory)
 {
     /** @var WP_Filesystem_Base $wp_filesystem */
     global $wp_filesystem;
     $user_slash_repo = fw()->manifest->get($this->manifest_key);
     $http = new WP_Http();
     $response = $http->get('https://api.github.com/repos/' . $user_slash_repo . '/releases');
     unset($http);
     if (wp_remote_retrieve_response_code($response) !== 200) {
         return new WP_Error('fw_ext_update_github_framework_download_releases_failed', __('Failed to access Github repository releases.', 'fw'));
     }
     $releases = json_decode($response['body'], true);
     unset($response);
     if (empty($releases)) {
         return new WP_Error('fw_ext_update_github_framework_download_no_releases', __('Github repository has no releases.', 'fw'));
     }
     $release = false;
     foreach ($releases as $_release) {
         if ($_release['tag_name'] === $version) {
             $release = $_release;
         }
     }
     if (empty($release)) {
         return new WP_Error('fw_ext_update_github_framework_download_not_existing_release', sprintf(__('Requested version (release) for download does not exists "%s".', 'fw'), $version));
     }
     $http = new WP_Http();
     $response = $http->request($release['zipball_url'], array('timeout' => $this->download_timeout));
     unset($http);
     if (wp_remote_retrieve_response_code($response) !== 200) {
         return new WP_Error('fw_ext_update_github_framework_download_failed', __('Failed to download framework zip.', 'fw'));
     }
     $zip_path = $wp_filesystem_download_directory . '/temp.zip';
     // save zip to file
     $wp_filesystem->put_contents($zip_path, $response['body']);
     unset($response);
     unzip_file(FW_WP_Filesystem::filesystem_path_to_real_path($zip_path), $wp_filesystem_download_directory);
     // remove zip file
     $wp_filesystem->delete($zip_path, false, 'f');
     $unzipped_dir = $wp_filesystem->dirlist($wp_filesystem_download_directory);
     $unzipped_dir = $wp_filesystem_download_directory . '/' . key($unzipped_dir);
     return $unzipped_dir;
 }
开发者ID:AdsonCicilioti,项目名称:Unyson,代码行数:46,代码来源:class-fw-extension-github-update.php

示例6: download

 /**
  * Download an extension
  *
  * global $wp_filesystem; must me initialized
  *
  * @param string $extension_name
  * @param array $data Extension data from the "available extensions" array
  * @return string|WP_Error WP Filesystem path to the downloaded directory
  */
 private function download($extension_name, $data)
 {
     $wp_error_id = 'fw_extension_download';
     if (empty($data['download'])) {
         return new WP_Error($wp_error_id, sprintf(__('Extension "%s" has no download sources.', 'fw'), $this->get_extension_title($extension_name)));
     }
     /** @var WP_Filesystem_Base $wp_filesystem */
     global $wp_filesystem;
     $wp_fs_tmp_dir = FW_WP_Filesystem::real_path_to_filesystem_path($this->get_tmp_dir());
     if ($wp_filesystem->exists($wp_fs_tmp_dir)) {
         // just in case it already exists, clear everything, it may contain old files
         if (!$wp_filesystem->rmdir($wp_fs_tmp_dir, true)) {
             return new WP_Error($wp_error_id, sprintf(__('Cannot remove temporary directory: %s', 'fw'), $wp_fs_tmp_dir));
         }
     }
     if (!FW_WP_Filesystem::mkdir_recursive($wp_fs_tmp_dir)) {
         return new WP_Error($wp_error_id, sprintf(__('Cannot create temporary directory: %s', 'fw'), $wp_fs_tmp_dir));
     }
     foreach ($data['download'] as $source => $source_data) {
         switch ($source) {
             case 'github':
                 if (empty($source_data['user_repo'])) {
                     return new WP_Error($wp_error_id, sprintf(__('"%s" extension github source "user_repo" parameter is required', 'fw'), $this->get_extension_title($extension_name)));
                 }
                 $transient_name = 'fw_ext_mngr_gh_dl';
                 $transient_ttl = HOUR_IN_SECONDS;
                 $cache = get_site_transient($transient_name);
                 if ($cache === false) {
                     $cache = array();
                 }
                 if (isset($cache[$source_data['user_repo']])) {
                     $download_link = $cache[$source_data['user_repo']]['zipball_url'];
                 } else {
                     $http = new WP_Http();
                     $response = $http->get(apply_filters('fw_github_api_url', 'https://api.github.com') . '/repos/' . $source_data['user_repo'] . '/releases/latest');
                     unset($http);
                     $response_code = intval(wp_remote_retrieve_response_code($response));
                     if ($response_code !== 200) {
                         if ($response_code === 403) {
                             $json_response = json_decode($response['body'], true);
                             if ($json_response) {
                                 return new WP_Error($wp_error_id, __('Github error:', 'fw') . ' ' . $json_response['message']);
                             }
                         } elseif ($response_code) {
                             return new WP_Error($wp_error_id, sprintf(__('Failed to access Github repository "%s" releases. (Response code: %d)', 'fw'), $source_data['user_repo'], $response_code));
                         } elseif (is_wp_error($response)) {
                             return new WP_Error($wp_error_id, sprintf(__('Failed to access Github repository "%s" releases. (%s)', 'fw'), $source_data['user_repo'], $response->get_error_message()));
                         } else {
                             return new WP_Error($wp_error_id, sprintf(__('Failed to access Github repository "%s" releases.', 'fw'), $source_data['user_repo']));
                         }
                     }
                     $release = json_decode($response['body'], true);
                     unset($response);
                     if (empty($release)) {
                         return new WP_Error($wp_error_id, sprintf(__('"%s" extension github repository "%s" has no releases.', 'fw'), $this->get_extension_title($extension_name), $source_data['user_repo']));
                     }
                     $cache[$source_data['user_repo']] = array('zipball_url' => 'https://github.com/' . $source_data['user_repo'] . '/archive/' . $release['tag_name'] . '.zip', 'tag_name' => $release['tag_name']);
                     set_site_transient($transient_name, $cache, $transient_ttl);
                     $download_link = $cache[$source_data['user_repo']]['zipball_url'];
                     unset($release);
                 }
                 $http = new WP_Http();
                 $response = $http->request($download_link, array('timeout' => $this->download_timeout));
                 unset($http);
                 if (($response_code = intval(wp_remote_retrieve_response_code($response))) !== 200) {
                     if ($response_code) {
                         return new WP_Error($wp_error_id, sprintf(__('Cannot download the "%s" extension zip. (Response code: %d)', 'fw'), $this->get_extension_title($extension_name), $response_code));
                     } elseif (is_wp_error($response)) {
                         return new WP_Error($wp_error_id, sprintf(__('Cannot download the "%s" extension zip. %s', 'fw'), $this->get_extension_title($extension_name), $response->get_error_message()));
                     } else {
                         return new WP_Error($wp_error_id, sprintf(__('Cannot download the "%s" extension zip.', 'fw'), $this->get_extension_title($extension_name)));
                     }
                 }
                 $zip_path = $wp_fs_tmp_dir . '/temp.zip';
                 // save zip to file
                 if (!$wp_filesystem->put_contents($zip_path, $response['body'])) {
                     return new WP_Error($wp_error_id, sprintf(__('Cannot save the "%s" extension zip.', 'fw'), $this->get_extension_title($extension_name)));
                 }
                 unset($response);
                 $unzip_result = unzip_file(FW_WP_Filesystem::filesystem_path_to_real_path($zip_path), $wp_fs_tmp_dir);
                 if (is_wp_error($unzip_result)) {
                     return $unzip_result;
                 }
                 // remove zip file
                 if (!$wp_filesystem->delete($zip_path, false, 'f')) {
                     return new WP_Error($wp_error_id, sprintf(__('Cannot remove the "%s" extension downloaded zip.', 'fw'), $this->get_extension_title($extension_name)));
                 }
                 $unzipped_dir_files = $wp_filesystem->dirlist($wp_fs_tmp_dir);
                 if (!$unzipped_dir_files) {
                     return new WP_Error($wp_error_id, __('Cannot access the unzipped directory files.', 'fw'));
                 }
//.........这里部分代码省略.........
开发者ID:northpen,项目名称:northpen,代码行数:101,代码来源:class--fw-extensions-manager.php

示例7: ml_check_pb_keys

function ml_check_pb_keys()
{
    $headers = array('X-PUSHBOTS-APPID' => get_option('ml_pb_app_id'), 'X-PUSHBOTS-SECRET' => get_option('ml_pb_secret_key'), 'Content-Type' => 'application/json', 'Content-Length' => 0);
    $url = 'https://api.pushbots.com/analytics';
    $request = new WP_Http();
    $result = $request->get($url, array('timeout' => 10, 'headers' => $headers, 'sslverify' => false));
    return isset($result['response']['code']) && $result['response']['code'] == 200;
}
开发者ID:WP2Android,项目名称:wordpress-2-android-plugin,代码行数:8,代码来源:menu.php

示例8: fpp_acquire_page_access_token

function fpp_acquire_page_access_token($page_id, $profile_access_token)
{
    $request = new WP_Http();
    $api_url = 'https://graph.facebook.com/me/accounts?access_token=' . urlencode($profile_access_token);
    $response = $request->get($api_url, array('timeout' => FPP_REQUEST_TIMEOUT, 'sslverify' => fpp_get_ssl_verify()));
    if (array_key_exists('errors', $response)) {
        throw new FacebookUnreachableException(!empty($response->errors) ? array_pop(array_pop($response->errors)) : '');
    }
    $json_response = json_decode($response['body']);
    if (!is_object($json_response) || !property_exists($json_response, 'data')) {
        throw new FacebookUnexpectedErrorException(__('Can\'t access Facebook user account information.', FPP_TEXT_DOMAIN));
    }
    foreach ($json_response->data as $account) {
        if ($account->id == $page_id) {
            if (!property_exists($account, 'access_token')) {
                throw new FacebookUnexpectedErrorException(__('Some or all access permissions for your page are missing.', FPP_TEXT_DOMAIN));
            }
            $page_access_token = $account->access_token;
            break;
        }
    }
    if (!isset($page_access_token)) {
        throw new FacebookErrorException(__('Your Facebook user account data contains no page with the given ID. You have to be administrator of the given page.', FPP_TEXT_DOMAIN));
    }
    return $page_access_token;
}
开发者ID:jasmith152,项目名称:golf_atlantic,代码行数:26,代码来源:fpp_index.php

示例9: run

 public function run()
 {
     if (!$this->is_config_update_disabled()) {
         $response = $this->http->get(ICL_REMOTE_WPML_CONFIG_FILES_INDEX . 'wpml-config/config-index.json');
         if (!is_wp_error($response) && $response['response']['code'] == 200) {
             $arr = json_decode($response['body']);
             if (isset($arr->plugins) && isset($arr->themes)) {
                 update_option('wpml_config_index', $arr);
                 update_option('wpml_config_index_updated', time());
                 $config_files = maybe_unserialize(get_option('wpml_config_files_arr'));
                 $config_files_for_themes = array();
                 $deleted_configs_for_themes = array();
                 $config_files_for_plugins = array();
                 $deleted_configs_for_plugins = array();
                 if ($config_files) {
                     if (isset($config_files->themes)) {
                         $config_files_for_themes = $config_files->themes;
                         $deleted_configs_for_themes = $config_files->themes;
                     }
                     if (isset($config_files->plugins)) {
                         $config_files_for_plugins = $config_files->plugins;
                         $deleted_configs_for_plugins = $config_files->plugins;
                     }
                 }
                 foreach ($arr->themes as $theme) {
                     if ($this->sitepress->get_wp_api()->get_theme_name() == $theme->name && (!isset($config_files_for_themes[$theme->name]) || md5($config_files_for_themes[$theme->name]) != $theme->hash)) {
                         $response = $this->http->get(ICL_REMOTE_WPML_CONFIG_FILES_INDEX . $theme->path);
                         if ($response['response']['code'] == 200) {
                             $config_files_for_themes[$theme->name] = $response['body'];
                         }
                     }
                 }
                 foreach ($deleted_configs_for_themes as $key => $deleted_config) {
                     unset($config_files_for_themes[$key]);
                 }
                 $active_plugins = $this->sitepress->get_wp_api()->get_plugins();
                 $active_plugins_names = array();
                 foreach ($active_plugins as $active_plugin) {
                     $active_plugins_names[] = $active_plugin['Name'];
                 }
                 foreach ($arr->plugins as $plugin) {
                     if (in_array($plugin->name, $active_plugins_names) && (!isset($config_files_for_plugins[$plugin->name]) || md5($config_files_for_plugins[$plugin->name]) != $plugin->hash)) {
                         $response = $this->http->get(ICL_REMOTE_WPML_CONFIG_FILES_INDEX . $plugin->path);
                         if (!is_wp_error($response) && $response['response']['code'] == 200) {
                             $config_files_for_plugins[$plugin->name] = $response['body'];
                         }
                     }
                 }
                 foreach ($deleted_configs_for_plugins as $key => $deleted_config) {
                     unset($config_files_for_plugins[$key]);
                 }
                 if (!isset($config_files) || !$config_files) {
                     $config_files = new stdClass();
                 }
                 $config_files->themes = $config_files_for_themes;
                 $config_files->plugins = $config_files_for_plugins;
                 update_option('wpml_config_files_arr', $config_files);
                 return true;
             }
         }
     }
     return false;
 }
开发者ID:SayenkoDesign,项目名称:ividf,代码行数:63,代码来源:class-wpml-config-update.php

示例10: time

 function update_wpml_config_index_event()
 {
     $wp_http_class = new WP_Http();
     $response = $wp_http_class->get(ICL_REMOTE_WPML_CONFIG_FILES_INDEX . 'wpml-config/config-index.json');
     if (!is_wp_error($response) && $response['response']['code'] == 200) {
         $arr = json_decode($response['body']);
         if (isset($arr->plugins) && isset($arr->themes)) {
             update_option('wpml_config_index', $arr);
             update_option('wpml_config_index_updated', time());
             $config_files_arr = maybe_unserialize(get_option('wpml_config_files_arr'));
             if ($config_files_arr) {
                 $config_files_themes_arr = $config_files_arr->themes;
                 $config_files_plugins_arr = $config_files_arr->plugins;
             } else {
                 $config_files_themes_arr = array();
                 $config_files_plugins_arr = array();
             }
             $wp_http_class = new WP_Http();
             $theme_data = wp_get_theme();
             foreach ($arr->themes as $theme) {
                 if ($theme_data->get('Name') == $theme->name && (!isset($config_files_themes_arr[$theme->name]) || md5($config_files_themes_arr[$theme->name]) != $theme->hash)) {
                     $response = $wp_http_class->get(ICL_REMOTE_WPML_CONFIG_FILES_INDEX . $theme->path);
                     if ($response['response']['code'] == 200) {
                         $config_files_themes_arr[$theme->name] = $response['body'];
                     }
                 }
             }
             if (!function_exists('get_plugins')) {
                 require_once ABSPATH . 'wp-admin/includes/plugin.php';
             }
             $active_plugins = get_plugins();
             foreach ($active_plugins as $active_plugin) {
                 $active_plugins_names[] = $active_plugin['Name'];
             }
             foreach ($arr->plugins as $plugin) {
                 if (in_array($plugin->name, $active_plugins_names) && (!isset($config_files_plugins_arr[$plugin->name]) || md5($config_files_plugins_arr[$plugin->name]) != $plugin->hash)) {
                     $response = $wp_http_class->get(ICL_REMOTE_WPML_CONFIG_FILES_INDEX . $plugin->path);
                     if (!is_wp_error($response) && $response['response']['code'] == 200) {
                         $config_files_plugins_arr[$plugin->name] = $response['body'];
                     }
                 }
             }
             if (!isset($config_files_arr) || !$config_files_arr) {
                 $config_files_arr = new stdClass();
             }
             $config_files_arr->themes = $config_files_themes_arr;
             $config_files_arr->plugins = $config_files_plugins_arr;
             update_option('wpml_config_files_arr', $config_files_arr);
             return true;
         }
     }
     return false;
 }
开发者ID:pablomarsan,项目名称:iftheme-docs,代码行数:53,代码来源:sitepress.class.php

示例11: ml_registered_devices_count

function ml_registered_devices_count()
{
    $request = new WP_Http();
    $headers = array('X-PUSHBOTS-APPID' => get_option('ml_pb_app_id'), 'X-PUSHBOTS-SECRET' => get_option('ml_pb_secret_key'), 'platform' => 0);
    $url = MOBILOUD_PB_URL . '/deviceToken/count';
    $result = $request->get($url, array('timeout' => 10, 'headers' => $headers, 'sslverify' => false));
    $iosCount = null;
    if ($result instanceof WP_Error) {
        $iosCount = null;
    } elseif (isset($result['body'])) {
        $responseJson = json_decode($result['body']);
        $iosCount = isset($responseJson->count) ? $responseJson->count : 0;
    }
    $request = new WP_Http();
    $headers = array('X-PUSHBOTS-APPID' => get_option('ml_pb_app_id'), 'X-PUSHBOTS-SECRET' => get_option('ml_pb_secret_key'), 'platform' => 1);
    $url = MOBILOUD_PB_URL . '/deviceToken/count';
    $result = $request->get($url, array('timeout' => 10, 'headers' => $headers, 'sslverify' => false));
    $androidCount = null;
    if ($result instanceof WP_Error) {
        $androidCount = null;
    } elseif (isset($result['body'])) {
        $responseJson = json_decode($result['body']);
        $androidCount = isset($responseJson->count) ? $responseJson->count : 0;
    }
    return array('ios' => $iosCount, 'android' => $androidCount);
}
开发者ID:a-i-ko93,项目名称:ipl-foodblog,代码行数:26,代码来源:push.php

示例12: nospamuser_check

function nospamuser_check($type, $data)
{
    $settings = bb_get_option('nospamuser-settings');
    if (!$settings) {
        bb_update_option('nospamuser-settings', $settings = array('days' => 30, 'min_occur' => 5, 'max_occur' => 10, 'api_key' => '', 'recaptcha_mode' => 'aggressive', 'recapthca_pub' => '', 'recaptcha_priv' => '', 'stats_public' => 0));
    }
    if (!is_array($result = bb_get_transient('nospamuser-' . $type . '-' . md5($data)))) {
        $wp_http = new WP_Http();
        $response = $wp_http->get('http://www.stopforumspam.com/api?' . urlencode($type) . '=' . urlencode($data), array('user-agent' => apply_filters('http_headers_useragent', backpress_get_option('wp_http_version')) . NOSPAMUSER_AGENT));
        $response = $response['body'];
        if (strpos($response, '<response success="true">') === false) {
            return;
        }
        if (strpos($response, '<appears>no</appears>') !== false) {
            $result = array(0, 0);
        } else {
            preg_match('/<lastseen>([^<>]+)<\\/lastseen>/', $response, $matches);
            $result = array((int) substr($response, strpos($response, '<frequency>') + 11), strtotime($matches[1]));
        }
        bb_set_transient('nospamuser-' . $type . '-' . md5($data), $result, 604800);
    }
    if ($result == array(0, 0)) {
        // Even if the settings are set incorrectly, non-spammers shouldn't be blocked.
        return;
    }
    if ($result[0] >= $settings['min_occur'] && $result[1] >= time() - $settings['days'] * 86400 || $result[0] >= $settings['max_occur'] && $settings['recaptcha_mode'] == 'aggressive') {
        if ($result[0] >= $settings['max_occur'] && $settings['recaptcha_mode'] == 'adaptive') {
            nospamuser_block($type, $data, true);
        } elseif ($settings['recaptcha_mode'] == 'aggressive' || !$settings['recaptcha_pub'] || !$settings['recaptcha_priv']) {
            nospamuser_block($type, $data, true);
        } else {
            nospamuser_block($type, $data, false);
        }
    }
}
开发者ID:achorg,项目名称:DH-Answers,代码行数:35,代码来源:bb-nospamuser.php

示例13: download

 /**
  * @param string $user_slash_repo Github 'user/repo'
  * @param string $version Requested version to download
  * @param string $wp_filesystem_download_directory Allocated temporary empty directory
  * @param string $title Used in messages
  *
  * @return string|WP_Error Path to the downloaded directory
  */
 private function download($user_slash_repo, $version, $wp_filesystem_download_directory, $title)
 {
     $http = new WP_Http();
     $response = $http->get($this->get_github_api_url('/repos/' . $user_slash_repo . '/releases/tags/' . $version));
     unset($http);
     $response_code = intval(wp_remote_retrieve_response_code($response));
     if ($response_code !== 200) {
         if ($response_code === 403) {
             $json_response = json_decode($response['body'], true);
             if ($json_response) {
                 return new WP_Error('fw_ext_update_github_download_releases_failed', __('Github error:', 'fw') . ' ' . $json_response['message']);
             }
         }
         if ($response_code) {
             return new WP_Error('fw_ext_update_github_download_releases_failed', sprintf(__('Failed to access Github repository "%s" releases. (Response code: %d)', 'fw'), $user_slash_repo, $response_code));
         } else {
             return new WP_Error('fw_ext_update_github_download_releases_failed', sprintf(__('Failed to access Github repository "%s" releases.', 'fw'), $user_slash_repo));
         }
     }
     $release = json_decode($response['body'], true);
     unset($response);
     if (empty($release)) {
         return new WP_Error('fw_ext_update_github_download_no_release', sprintf(__('%s github repository "%s" does not have the "%s" release.', 'fw'), $title, $user_slash_repo, $version));
     }
     $http = new WP_Http();
     $response = $http->request('https://github.com/' . $user_slash_repo . '/archive/' . $release['tag_name'] . '.zip', array('timeout' => $this->download_timeout));
     unset($http);
     if (intval(wp_remote_retrieve_response_code($response)) !== 200) {
         return new WP_Error('fw_ext_update_github_download_failed', sprintf(__('Cannot download %s zip.', 'fw'), $title));
     }
     /** @var WP_Filesystem_Base $wp_filesystem */
     global $wp_filesystem;
     $zip_path = $wp_filesystem_download_directory . '/temp.zip';
     // save zip to file
     if (!$wp_filesystem->put_contents($zip_path, $response['body'])) {
         return new WP_Error('fw_ext_update_github_save_download_failed', sprintf(__('Cannot save %s zip.', 'fw'), $title));
     }
     unset($response);
     $unzip_result = unzip_file(FW_WP_Filesystem::filesystem_path_to_real_path($zip_path), $wp_filesystem_download_directory);
     if (is_wp_error($unzip_result)) {
         return $unzip_result;
     }
     // remove zip file
     if (!$wp_filesystem->delete($zip_path, false, 'f')) {
         return new WP_Error('fw_ext_update_github_remove_downloaded_zip_failed', sprintf(__('Cannot remove %s zip.', 'fw'), $title));
     }
     $unzipped_dir_files = $wp_filesystem->dirlist($wp_filesystem_download_directory);
     if (!$unzipped_dir_files) {
         return new WP_Error('fw_ext_update_github_unzipped_dir_fail', __('Cannot access the unzipped directory files.', 'fw'));
     }
     /**
      * get first found directory
      * (if everything worked well, there should be only one directory)
      */
     foreach ($unzipped_dir_files as $file) {
         if ($file['type'] == 'd') {
             return $wp_filesystem_download_directory . '/' . $file['name'];
         }
     }
     return new WP_Error('fw_ext_update_github_unzipped_dir_not_found', sprintf(__('The unzipped %s directory not found.', 'fw'), $title));
 }
开发者ID:puriwp,项目名称:Theme-Framework,代码行数:69,代码来源:class-fw-extension-github-update.php

示例14: opensso_get_name

function opensso_get_name($ssotoken)
{
    $url = OPENSSO_ATTRIBUTES . '?subjectid=' . urlencode($ssotoken);
    $http = new WP_Http();
    $response = $http->get($url, array('headers' => $headers));
    if ($response['response']['code'] != 200) {
        return null;
    }
    // Need to parse name/value pairs, to get value for WordPress username attribute
    $lines = explode("\n", $response['body']);
    reset($lines);
    foreach ($lines as $line) {
        if ($line == 'userdetails.attribute.name=' . OPENSSO_WORDPRESS_USERNAME_ATTRIBUTE) {
            // 'current' line holds attribute value
            // 28 points to character after 'userdetails.attribute.value='
            $name = substr(current($lines), 28);
            break;
        }
    }
    return $name;
}
开发者ID:GajendraNaidu,项目名称:openam,代码行数:21,代码来源:opensso.php

示例15: RAND

    if ($current_state != $new_state) {
        $this->set_rand_enabled($new_state);
        $message = "ORDER BY RAND() support is now <b>" . ($new_state ? 'enabled' : 'disabled') . "</b>.";
    }
    // HTML post-processing
    $result = $this->set_regex_html_post_process_text($fv_regex_html_post_process);
    if ($result !== TRUE) {
        $error = "<b>Error in HTML replacement regex:</b><br>{$result}<br>(Maybe you forgot the beginning and ending characters?)";
    }
}
// Fix file permissions
if (wpe_param('file-perms')) {
    check_admin_referer(PWP_NAME . '-config');
    $url = "https://api.wpengine.com/1.2/?method=file-permissions&account_name=" . PWP_NAME . "&wpe_apikey=" . WPE_APIKEY;
    $http = new WP_Http();
    $msg = $http->get($url);
    if (is_a($msg, 'WP_Error')) {
        return false;
    }
    if (!isset($msg['body'])) {
        return false;
    }
    $data = json_decode($msg['body'], true);
    $message = @$data['message'];
}
// Process purging all caches
if (wpe_param('purge-all')) {
    check_admin_referer(PWP_NAME . '-config');
    // check_admin_referer(PWP_NAME.'-config');		DO NOT CHECK because it's OK to just hit it from anywhere, and in fact we do.
    WpeCommon::purge_memcached();
    WpeCommon::clear_maxcdn_cache();
开发者ID:benpeck,项目名称:experticity-fools,代码行数:31,代码来源:admin-ui.php


注:本文中的WP_Http::get方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。