Files
WP-LIT-MCP/tests/Fixtures/divi/reference/tb-load-setting-options.txt
T

37 lines
1.1 KiB
Plaintext

function et_theme_builder_load_template_setting_options( $setting_ids ) {
$flat_parent_settings = et_theme_builder_get_flat_template_settings_options();
$groups = array();
foreach ( $setting_ids as $setting_id ) {
$parent_id = explode( ET_THEME_BUILDER_SETTING_SEPARATOR, $setting_id );
$entity_id = implode( '', array_slice( $parent_id, -1 ) );
$parent_id = array_slice( $parent_id, 0, -1 );
$parent_id = implode( ET_THEME_BUILDER_SETTING_SEPARATOR, $parent_id ) . ET_THEME_BUILDER_SETTING_SEPARATOR;
if ( ! isset( $flat_parent_settings[ $parent_id ] ) ) {
// Top-level, invalid or unknown setting.
continue;
}
if ( ! isset( $groups[ $parent_id ] ) ) {
$groups[ $parent_id ] = array(
'parent' => $flat_parent_settings[ $parent_id ],
'settings' => array(),
);
}
$groups[ $parent_id ]['settings'][ $setting_id ] = $entity_id;
}
$settings = array();
foreach ( $groups as $parent_id => $group ) {
$settings = array_merge(
$settings,
et_theme_builder_get_template_setting_child_options( $group['parent'], $group['settings'] )
);
}
return $settings;
}