PluginProbe
Smash Balloon Social Post Feed – Simple Social Feeds for WordPress / trunk
Smash Balloon Social Post Feed – Simple Social Feeds for WordPress vtrunk
4.12.0 4.10.0 4.9.0 4.8.1 trunk 1.0 1.1 1.12.1 1.2.3 1.2.4 1.2.5 1.2.7 1.2.8 1.2.9 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.4.0 1.4.1 1.4.2 All 171 releases
custom-facebook-feed / inc / CFF_HTTP_Request.php
CFF_HTTP_Request.php
110 lines 1.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 /**
4 * Class CFF_HTTP_Request
5 *
6 * This class with make remote request
7 *
8 * @since 4.0
9 */
10
11 namespace CustomFacebookFeed;
12
13 if (! defined('ABSPATH')) {
14 exit; // Exit if accessed directly
15 }
16
17 class CFF_HTTP_Request
18 {
19 public function __construct()
20 {
21 }
22
23 /**
24 * Make the HTTP remote request
25 *
26 * @param string $method
27 * @param string $url
28 * @param array|null $data
29 *
30 * @since 4.0
31 *
32 * @return array|WP_Error
33 */
34 public static function request($method, $url, $data = null)
35 {
36 $args = array(
37 'headers' => array(
38 'Content-Type' => 'application/json',
39 ),
40 );
41
42 $args = array_merge($args, $data);
43
44 if ('GET' === $method) {
45 $request = wp_safe_remote_get($url, $args);
46 } elseif ('DELETE' === $method) {
47 $args['method'] = 'DELETE';
48 $request = wp_safe_remote_request($url, $args);
49 } elseif ('PATCH' === $method) {
50 $args['method'] = 'PATCH';
51 $request = wp_safe_remote_request($url, $args);
52 } elseif ('PUT' === $method) {
53 $args['method'] = 'PUT';
54 $request = wp_safe_remote_request($url, $args);
55 } else {
56 $args['method'] = 'POST';
57 $request = wp_safe_remote_post($url, $args);
58 }
59
60 return $request;
61 }
62
63 /**
64 * Check if WP_Error returned
65 *
66 * @param array|WP_Error $request
67 *
68 * @since 4.0
69 *
70 * @return array|WP_Error
71 */
72 public static function is_error($request)
73 {
74 return is_wp_error($request);
75 }
76
77 /**
78 * Get the remote call status code
79 *
80 * @param array|WP_Error $request
81 *
82 * @since 4.0
83 *
84 * @return array|WP_Error
85 */
86 public static function status($request)
87 {
88 if (is_wp_error($request)) {
89 return;
90 }
91
92 return wp_remote_retrieve_response_code($request);
93 }
94
95 /**
96 * Get the remote call body data
97 *
98 * @param array|WP_Error $request
99 *
100 * @since 4.0
101 *
102 * @return array $response
103 */
104 public static function data($request)
105 {
106 $response = wp_remote_retrieve_body($request);
107 return json_decode($response);
108 }
109 }
110