# optimole-wp/3.1.0/inc/compatibilities/foogallery.php

Optimole – Optimize Images | Convert WebP &amp; AVIF | CDN &amp; Lazy Load | Image Optimization, version 3.1.0. 44 lines.

- Page: https://pluginprobe.com/plugins/optimole-wp/3.1.0/code/inc/compatibilities/foogallery.php
- Raw: https://pluginprobe.com/plugins/optimole-wp/3.1.0/raw/inc/compatibilities/foogallery.php
- Modified: 2020-12-17T13:29:24+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/optimole-wp/3.1.0/code/inc/compatibilities/foogallery.php#L10-L20`.

```php
<?php

/**
 * Class Optml_shortcode_ultimate.
 *
 * @reason The gallery output contains a different src attribute used for lazyload
 * which prevented optimole to parse the tag.
 */
class Optml_foogallery extends Optml_compatibility {

	/**
	 * Should we load the integration logic.
	 *
	 * @return bool Should we load.
	 */
	function should_load() {
		include_once( ABSPATH . 'wp-admin/includes/plugin.php' );

		return is_plugin_active( 'foogallery/foogallery.php' );
	}

	/**
	 * Register integration details.
	 */
	public function register() {
		add_filter( 'optml_possible_src_attributes', [ $this, 'add_lazysrc' ], 10, 3 );
		add_filter( 'optml_possible_lazyload_flags', [ $this, 'add_lazysrc' ], 10, 3 );
	}

	/**
	 * Add foogallery lazysrc attribute.
	 *
	 * @param array $attributes Old src attributes.
	 *
	 * @return array New src attributes.
	 */
	function add_lazysrc( $attributes = [] ) {

		$attributes[] = 'data-src-fg';

		return $attributes;
	}
}

```
