61 lines
1.3 KiB
PHP
61 lines
1.3 KiB
PHP
<?php
|
|
/**
|
|
* Plugin compatibility for Jucra ACF Maps.
|
|
*
|
|
* @package Divi
|
|
* @subpackage Builder
|
|
* @since 4.10.5
|
|
*/
|
|
|
|
if ( ! defined( 'ABSPATH' ) ) {
|
|
exit; // Exit if accessed directly.
|
|
}
|
|
|
|
/**
|
|
* Plugin compatibility for Jucra ACF Maps.
|
|
*
|
|
* @since 4.10.5
|
|
*
|
|
* @link https://www.jucra.com/display-acf-maps-in-a-divi-theme-builder-page/
|
|
*/
|
|
class ET_Builder_Plugin_Compat_Jucra_ACF_Maps extends ET_Builder_Plugin_Compat_Base {
|
|
/**
|
|
* Constructor
|
|
*/
|
|
public function __construct() {
|
|
$this->plugin_id = 'jucra-acf-google-maps-for-divi/index.php';
|
|
$this->init_hooks();
|
|
}
|
|
|
|
/**
|
|
* Hook methods to WordPress
|
|
*
|
|
* @return void
|
|
*/
|
|
public function init_hooks() {
|
|
add_filter( 'et_builder_enable_jquery_body', [ $this, 'maybe_disable_jquery_body' ], 10, 2 );
|
|
}
|
|
|
|
/**
|
|
* Disable JQuery Body feature when showing a map
|
|
*
|
|
* @since 4.10.5
|
|
*
|
|
* @param bool $enabled Whether the feature should be enabled or not.
|
|
* @param string $content TB/Post Content.
|
|
*
|
|
* @return bool
|
|
*/
|
|
public function maybe_disable_jquery_body( $enabled, $content = '' ) {
|
|
if ( empty( $content ) ) {
|
|
return $enabled;
|
|
}
|
|
|
|
// disable when the shortcode is found.
|
|
return false === strpos( $content, 'jucra_acf_map' ) ? $enabled : false;
|
|
}
|
|
|
|
}
|
|
|
|
new ET_Builder_Plugin_Compat_Jucra_ACF_Maps();
|