| Conditions | 10 | 
| Paths | 7 | 
| Total Lines | 41 | 
| Lines | 0 | 
| Ratio | 0 % | 
| Changes | 0 | ||
Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.
For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.
Commonly applied refactorings include:
If many parameters/temporary variables are present:
| 1 | <?php  | 
            ||
| 31 | 	public static function get_access_token() { | 
            ||
| 32 | // If the site provides its own Mapbox access token, return it.  | 
            ||
| 33 | $service_api_key = Jetpack_Options::get_option( self::$site_option_key );  | 
            ||
| 34 | 		if ( $service_api_key ) { | 
            ||
| 35 | return self::format_access_token( $service_api_key );  | 
            ||
| 36 | }  | 
            ||
| 37 | |||
| 38 | $site_id = self::get_wpcom_site_id();  | 
            ||
| 39 | |||
| 40 | // If on WordPress.com, try to return the access token straight away.  | 
            ||
| 41 | 		if ( self::is_wpcom() && defined( 'WPCOM_MAPBOX_ACCESS_TOKEN' ) ) { | 
            ||
| 42 | jetpack_require_lib( 'mapbox-blacklist' );  | 
            ||
| 43 | return wpcom_is_site_blacklisted_from_map_block( $site_id )  | 
            ||
| 44 | ? self::format_access_token()  | 
            ||
| 45 | : self::format_access_token( WPCOM_MAPBOX_ACCESS_TOKEN, 'wpcom' );  | 
            ||
| 46 | }  | 
            ||
| 47 | |||
| 48 | // If not on WordPress.com or Atomic, return an empty access token.  | 
            ||
| 49 | 		if ( ! $site_id || ( ! self::is_wpcom() && ! jetpack_is_atomic_site() ) ) { | 
            ||
| 50 | return self::format_access_token();  | 
            ||
| 51 | }  | 
            ||
| 52 | |||
| 53 | // If there is a cached token, return it.  | 
            ||
| 54 | $cached_token = get_transient( self::$transient_key );  | 
            ||
| 55 | 		if ( $cached_token ) { | 
            ||
| 56 | return self::format_access_token( $cached_token, 'wpcom' );  | 
            ||
| 57 | }  | 
            ||
| 58 | |||
| 59 | // Otherwise get it from the WordPress.com endpoint.  | 
            ||
| 60 | $request_url = 'https://public-api.wordpress.com/wpcom/v2/sites/' . $site_id . '/mapbox';  | 
            ||
| 61 | $response = wp_remote_get( esc_url_raw( $request_url ) );  | 
            ||
| 62 | 		if ( 200 !== wp_remote_retrieve_response_code( $response ) ) { | 
            ||
| 63 | return self::format_access_token();  | 
            ||
| 64 | }  | 
            ||
| 65 | |||
| 66 | $response_body = json_decode( wp_remote_retrieve_body( $response ) );  | 
            ||
| 67 | $wpcom_mapbox_access_token = $response_body->wpcom_mapbox_access_token;  | 
            ||
| 68 | |||
| 69 | set_transient( self::$transient_key, $wpcom_mapbox_access_token, HOUR_IN_SECONDS );  | 
            ||
| 70 | return self::format_access_token( $wpcom_mapbox_access_token, 'wpcom' );  | 
            ||
| 71 | }  | 
            ||
| 72 | |||
| 110 |