File "Compatibility.php"

Full Path: /home/jovision/public_html/wp/wp-content/plugins/host-webfonts-local/src/Compatibility.php
File size: 1.94 KB
MIME-type: text/x-php
Charset: utf-8

<?php
/* * * * * * * * * * * * * * * * * * * * *
*
*  ██████╗ ███╗   ███╗ ██████╗ ███████╗
* ██╔═══██╗████╗ ████║██╔════╝ ██╔════╝
* ██║   ██║██╔████╔██║██║  ███╗█████╗
* ██║   ██║██║╚██╔╝██║██║   ██║██╔══╝
* ╚██████╔╝██║ ╚═╝ ██║╚██████╔╝██║
*  ╚═════╝ ╚═╝     ╚═╝ ╚═════╝ ╚═╝
*
* @package  : OMGF
* @author   : Daan van den Bergh
* @copyright: © 2026 Daan van den Bergh
* @url      : https://daan.dev
* * * * * * * * * * * * * * * * * * * */

namespace OMGF;

/**
 * @codeCoverageIgnore Because it depends on 3rd party plugins.
 */
class Compatibility {
	/**
	 * Build class.
	 */
	public function __construct() {
		$this->init();
	}

	/**
	 * Action/filter hooks for global compatibility fixes, required in front-/back-end.
	 *
	 * @return void
	 */
	private function init() {
		add_action( 'plugins_loaded', [ $this, 'load_global_plugin_compatibility_fixes' ] );
	}

	/**
	 * Load Global 3rd party compatibility fixes.
	 *
	 * @return void
	 */
	public function load_global_plugin_compatibility_fixes() {
		new Compatibility\Core();
		new Compatibility\CachingPlugins();

		if ( defined( 'AVADA_VERSION' ) ) {
			new Compatibility\Avada();
		}

		if ( defined( 'ELEMENTOR_VERSION' ) ) {
			new Compatibility\Elementor();
		}

		if ( defined( 'FL_BUILDER_VERSION' ) ) {
			new Compatibility\BeaverBuilder();
		}

		if ( defined( 'BRICKS_VERSION' ) ) {
			new Compatibility\Bricks();
		}

		if ( defined( 'ET_BUILDER_VERSION' ) ) {
			new Compatibility\Divi();
		}

		if ( defined( 'SHOW_CT_BUILDER' ) ) {
			new Compatibility\Oxygen();
		}

		if ( defined( 'WPB_VC_VERSION' ) ) {
			new Compatibility\VisualComposer();
		}
	}
}