_fetch_remote_file( string $url, array $headers = "" ): Snoopy

In this article

Retrieve URL headers and content using WP HTTP Request API.

Parameters

$urlstringrequired
URL to retrieve
$headersarrayoptional
Headers to send to the URL. Default empty string.

Default:""

Return

Snoopy style response

Source

function _fetch_remote_file($url, $headers = "" ) {	$resp = wp_safe_remote_request( $url, array( 'headers' => $headers, 'timeout' => MAGPIE_FETCH_TIME_OUT ) );	if ( is_wp_error($resp) ) {	$error = array_shift($resp->errors);	$resp = new stdClass;	$resp->status = 500;	$resp->response_code = 500;	$resp->error = $error[0] . "\n"; //\n = Snoopy compatibility	return $resp;	}	// Snoopy returns headers unprocessed.	// Also note, WP_HTTP lowercases all keys, Snoopy did not.	$return_headers = array();	foreach ( wp_remote_retrieve_headers( $resp ) as $key => $value ) {	if ( !is_array($value) ) {	$return_headers[] = "$key: $value";	} else {	foreach ( $value as $v )	$return_headers[] = "$key: $v";	}	}	$response = new stdClass;	$response->status = wp_remote_retrieve_response_code( $resp );	$response->response_code = wp_remote_retrieve_response_code( $resp );	$response->headers = $return_headers;	$response->results = wp_remote_retrieve_body( $resp );	return $response; } 

Changelog

VersionDescription
1.5.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.