Skip to content

Instantly share code, notes, and snippets.

@fastlinemedia
Created December 4, 2018 23:35
Show Gist options
  • Save fastlinemedia/ea77d927955f9d27a011fc1cac6d0a7d to your computer and use it in GitHub Desktop.
Save fastlinemedia/ea77d927955f9d27a011fc1cac6d0a7d to your computer and use it in GitHub Desktop.
Restore the legacy row background opacity field for Beaver Builder.
<?php
add_filter( 'fl_builder_register_settings_form', 'add_back_bb_row_bg_opacity', 10, 2 );
add_filter( 'fl_builder_node_settings', 'apply_opacity_to_bb_row_bg_color', 10, 2 );
function add_back_bb_row_bg_opacity( $form, $slug ) {
if ( 'row' === $slug ) {
$form['tabs']['style']['sections']['bg_color']['fields']['bg_opacity'] = array(
'type' => 'unit',
'label' => __( 'Opacity', 'fl-builder' ),
'default' => '100',
'units' => array( '%' ),
);
}
return $form;
}
function apply_opacity_to_bb_row_bg_color( $settings, $node ) {
if ( 'row' === $node->type ) {
if ( isset( $settings->connections ) ) {
$connections = (array) $settings->connections;
if ( isset( $connections[ 'bg_color' ] ) && is_object( $connections[ 'bg_color' ] ) ) {
$rgb = implode( ',', FLBuilderColor::hex_to_rgb( $settings->bg_color ) );
$alpha = $settings->bg_opacity / 100;
$settings->bg_color = "rgba($rgb, $alpha)";
}
}
}
return $settings;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment