namespace WPForms\Integrations\Square\Integrations;
class Divi implements IntegrationInterface {
* Indicate whether current integration is allowed to load.
public function allow_load(): bool {
return wpforms_is_divi_active();
public function hooks() {
add_action( 'wpforms_frontend_css', [ $this, 'frontend_styles' ], 12 );
if ( $this->is_editor_page() ) {
add_action( 'wp_enqueue_scripts', [ $this, 'editor_styles' ], 12 );
* Determine whether editor page is loaded.
public function is_editor_page(): bool {
return wpforms_is_divi_editor();
public function editor_styles() {
// Do not include styles if the "Include Form Styling > No Styles" is set.
if ( wpforms_setting( 'disable-css', '1' ) === '3' ) {
$min = wpforms_get_min_suffix();
'wpforms-square-divi-integration-card-placeholder',
WPFORMS_PLUGIN_URL . "assets/css/integrations/square/divi/wpforms-square-card-placeholder{$min}.css",
public function frontend_styles() {
if ( ! $this->is_divi_plugin_loaded() ) {
// Do not include styles if the "Include Form Styling > No Styles" is set.
if ( wpforms_setting( 'disable-css', '1' ) === '3' ) {
$min = wpforms_get_min_suffix();
'wpforms-square-divi-integration-frontend',
WPFORMS_PLUGIN_URL . "assets/css/integrations/square/divi/wpforms-square{$min}.css",
* Determine whether the Divi Builder plugin is loaded.
private function is_divi_plugin_loaded(): bool {
return function_exists( 'et_is_builder_plugin_active' ) && et_is_builder_plugin_active();