wp_safe_remote_request()
Получает данные по переданному HTTP запросу (УРЛ). Данные возвращаются в виде массива: тело, заголовки, статус ответа...
Функция отлично подходит при HTTP запросах на неизвестные URL. Указанный URL проверяется, чтобы избежать редиректов и атак связанных с "подделкой" URL.
Работает на основе: _wp_http_get_object()
Хуков нет.
Возвращает
Массив|WP_Error
. WP_Error/массив: ответ сервера в виде массива или объект WP_Error в случает ошибки.
Использование
wp_safe_remote_request( $url, $args );
- $url(cтрока) (обязательный)
- УРЛ сайта, данные которого нужно получить.
- $args(массив)
- Параметры запроса.
По умолчанию: array()
Примеры
#1 Получим данные ответа сервера по УРЛ
Допустим нам нужно получить страницу http://wordpress.org, но предварительно нужно проверить вернул ли сервер статус код 200 (OK - "хорошо"):
$res = wp_safe_remote_request('http://wordpress.org'); print_r( $res );
Вернет:
Array ( [headers] => Array ( [server] => nginx [date] => Sun, 02 Nov 2014 21:01:46 GMT [content-type] => text/html; charset=utf-8 [connection] => close [vary] => Accept-Encoding [x-frame-options] => SAMEORIGIN [x-nc] => HIT lax 250 ) [body] => <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en"> ... [response] => Array ( [code] => 200 [message] => OK ) [cookies] => Array ( ) [filename] =>
Заметки
- Смотрите: wp_remote_request() For more information on the response array format.
- Смотрите: WP_Http::request() For default arguments information.
Список изменений
С версии 3.6.0 | Введена. |
Код wp_safe_remote_request() wp safe remote request WP 6.4.3
function wp_safe_remote_request( $url, $args = array() ) { $args['reject_unsafe_urls'] = true; $http = _wp_http_get_object(); return $http->request( $url, $args ); }