wpseek.com
Eine auf WordPress spezialiserte Suchmaschine für Entwickler und Theme-Autoren



wp_get_http › WordPress Function

Seit2.5.0
Veraltet4.4.0
wp_get_http ( $url, $file_path = false, $red = 1 )
Parameter: (3)
  • (string) $url URL to fetch.
    Erforderlich: Ja
  • (string|bool) $file_path Optional. File path to write request to. Default false.
    Erforderlich: Nein
    Standard: false
  • (int) $red Optional. The number of Redirects followed, Upon 5 being hit, returns false. Default 1.
    Erforderlich: Nein
    Standard: 1
Siehe:
  • WP_Http
Gibt zurück:
  • (WpOrgRequestsUtilityCaseInsensitiveDictionary|false) Headers on success, false on failure.
Definiert in:
Codex:

Perform a HTTP HEAD or GET request.

If $file_path is a writable filename, this will do a GET request and write the file to that path.


Quellcode

function wp_get_http( $url, $file_path = false, $red = 1 ) {
	_deprecated_function( __FUNCTION__, '4.4.0', 'WP_Http' );

	// Add 60 seconds to the script timeout to ensure the remote request has enough time.
	if ( function_exists( 'set_time_limit' ) ) {
		@set_time_limit( 60 );
	}

	if ( $red > 5 )
		return false;

	$options = array();
	$options['redirection'] = 5;

	if ( false == $file_path )
		$options['method'] = 'HEAD';
	else
		$options['method'] = 'GET';

	$response = wp_safe_remote_request( $url, $options );

	if ( is_wp_error( $response ) )
		return false;

	$headers = wp_remote_retrieve_headers( $response );
	$headers['response'] = wp_remote_retrieve_response_code( $response );

	// WP_HTTP no longer follows redirects for HEAD requests.
	if ( 'HEAD' == $options['method'] && in_array($headers['response'], array(301, 302)) && isset( $headers['location'] ) ) {
		return wp_get_http( $headers['location'], $file_path, ++$red );
	}

	if ( false == $file_path )
		return $headers;

	// GET request - write it to the supplied filename.
	$out_fp = fopen($file_path, 'w');
	if ( !$out_fp )
		return $headers;

	fwrite( $out_fp,  wp_remote_retrieve_body( $response ) );
	fclose($out_fp);
	clearstatcache();

	return $headers;
}