# imagify/1.4.2/inc/functions/api.php

Imagify Image Optimization: Optimize Images | Compress &amp; Convert to WebP/AVIF, version 1.4.2. 61 lines.

- Page: https://pluginprobe.com/plugins/imagify/1.4.2/code/inc/functions/api.php
- Raw: https://pluginprobe.com/plugins/imagify/1.4.2/raw/inc/functions/api.php
- Modified: 2016-02-27T17:21:00+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/imagify/1.4.2/code/inc/functions/api.php#L10-L20`.

```php
<?php
defined( 'ABSPATH' ) or die( 'Cheatin\' uh?' );

/**
 * Check if external requests are blocked for Imagify.
 *
 * @since 1.0
 *
 * return bool True if Imagify API can't be called
 */
function is_imagify_blocked() {
	if ( ! defined( 'WP_HTTP_BLOCK_EXTERNAL' ) || ! WP_HTTP_BLOCK_EXTERNAL ) {
		return false;
	}
	
	if ( defined( 'WP_ACCESSIBLE_HOSTS' ) ) {
		$accessible_hosts = explode( ',', WP_ACCESSIBLE_HOSTS );
		$accessible_hosts = array_map( 'trim', $accessible_hosts );
		
		if ( in_array( '*.imagify.io', $accessible_hosts ) ) {
			return false;	
		}
	}
	
	return true;
}

/**
 * Determine if the Imagify API is available by checking the API version.
 *
 * @since 1.0
 *
 * @return bool True if the Imagify API is available.
 */
function is_imagify_servers_up() {
	static $imagify_api_version = null;
	
	if ( null !== $imagify_api_version ) {
		return $imagify_api_version;
	}
	
	$transient_name       = 'imagify_check_api_version';
	$transient_expiration = 3 * MINUTE_IN_SECONDS;
	
	if ( get_site_transient( $transient_name ) ) {
		$imagify_api_version = true;
		return true;
	}
	
	if ( is_wp_error( get_imagify_api_version() ) ) {
		$imagify_api_version = false;
		set_site_transient( $transient_name, 0, $transient_expiration );
		
		return false;
	}
	
	$imagify_api_version = true;
	set_site_transient( $transient_name, 1, $transient_expiration );
	
	return true;
}
```
