Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/clone/wp-conte.../themes/Divi/includes/builder
File: class-et-builder-element.php
if ( isset( $this->advanced_fields ) ) {
[15000] Fix | Delete
$this->advanced_fields = apply_filters(
[15001] Fix | Delete
"{$this->slug}_advanced_fields",
[15002] Fix | Delete
$this->advanced_fields,
[15003] Fix | Delete
$this->slug,
[15004] Fix | Delete
$this->main_css_element
[15005] Fix | Delete
);
[15006] Fix | Delete
}
[15007] Fix | Delete
[15008] Fix | Delete
if ( isset( $this->custom_css_fields ) ) {
[15009] Fix | Delete
$this->custom_css_fields = apply_filters(
[15010] Fix | Delete
"{$this->slug}_custom_css_fields",
[15011] Fix | Delete
$this->custom_css_fields,
[15012] Fix | Delete
$this->slug,
[15013] Fix | Delete
$this->main_css_element
[15014] Fix | Delete
);
[15015] Fix | Delete
}
[15016] Fix | Delete
[15017] Fix | Delete
}
[15018] Fix | Delete
[15019] Fix | Delete
function disable_wptexturize( $shortcodes ) {
[15020] Fix | Delete
$shortcodes[] = $this->slug;
[15021] Fix | Delete
[15022] Fix | Delete
return $shortcodes;
[15023] Fix | Delete
}
[15024] Fix | Delete
[15025] Fix | Delete
function fix_wptexturized_script( $matches ) {
[15026] Fix | Delete
return str_replace( '&', '&', $matches[0] );
[15027] Fix | Delete
}
[15028] Fix | Delete
[15029] Fix | Delete
function fix_wptexturized_scripts( $content ) {
[15030] Fix | Delete
return preg_replace_callback(
[15031] Fix | Delete
'/<script.*?>(.*?)<\/script>/mis',
[15032] Fix | Delete
array( $this, 'fix_wptexturized_script' ),
[15033] Fix | Delete
$content
[15034] Fix | Delete
);
[15035] Fix | Delete
}
[15036] Fix | Delete
[15037] Fix | Delete
static function compare_by_priority( $a, $b ) {
[15038] Fix | Delete
$a_priority = ! empty( $a['priority'] ) ? (int) $a['priority'] : self::DEFAULT_PRIORITY;
[15039] Fix | Delete
$b_priority = ! empty( $b['priority'] ) ? (int) $b['priority'] : self::DEFAULT_PRIORITY;
[15040] Fix | Delete
[15041] Fix | Delete
if ( isset( $a['_order_number'], $b['_order_number'] ) && ( $a_priority === $b_priority ) ) {
[15042] Fix | Delete
return $a['_order_number'] - $b['_order_number'];
[15043] Fix | Delete
}
[15044] Fix | Delete
[15045] Fix | Delete
return $a_priority - $b_priority;
[15046] Fix | Delete
}
[15047] Fix | Delete
[15048] Fix | Delete
/*
[15049] Fix | Delete
* Reorder toggles based on the priority with respect to manually ordered items with no priority
[15050] Fix | Delete
*
[15051] Fix | Delete
*/
[15052] Fix | Delete
static function et_pb_order_toggles_by_priority( $toggles_array ) {
[15053] Fix | Delete
if ( empty( $toggles_array ) ) {
[15054] Fix | Delete
return array();
[15055] Fix | Delete
}
[15056] Fix | Delete
[15057] Fix | Delete
$high_priority_toggles = array();
[15058] Fix | Delete
$low_priority_toggles = array();
[15059] Fix | Delete
$manually_ordered_toggles = array();
[15060] Fix | Delete
[15061] Fix | Delete
// fill 3 arrays based on priority
[15062] Fix | Delete
foreach ( $toggles_array as $toggle_id => $toggle_data ) {
[15063] Fix | Delete
if ( isset( $toggle_data['priority'] ) ) {
[15064] Fix | Delete
if ( $toggle_data['priority'] < 10 ) {
[15065] Fix | Delete
$high_priority_toggles[ $toggle_id ] = $toggle_data;
[15066] Fix | Delete
} else {
[15067] Fix | Delete
$low_priority_toggles[ $toggle_id ] = $toggle_data;
[15068] Fix | Delete
}
[15069] Fix | Delete
} else {
[15070] Fix | Delete
// keep the original order of options without priority defined
[15071] Fix | Delete
$manually_ordered_toggles[ $toggle_id ] = $toggle_data;
[15072] Fix | Delete
}
[15073] Fix | Delete
}
[15074] Fix | Delete
[15075] Fix | Delete
// order high and low priority toggles
[15076] Fix | Delete
uasort( $high_priority_toggles, array( 'self', 'compare_by_priority' ) );
[15077] Fix | Delete
uasort( $low_priority_toggles, array( 'self', 'compare_by_priority' ) );
[15078] Fix | Delete
[15079] Fix | Delete
// merge 3 arrays to get the correct order of toggles.
[15080] Fix | Delete
return array_merge( $high_priority_toggles, $manually_ordered_toggles, $low_priority_toggles );
[15081] Fix | Delete
}
[15082] Fix | Delete
[15083] Fix | Delete
static function compare_by_name( $a, $b ) {
[15084] Fix | Delete
return strcasecmp( $a->name, $b->name );
[15085] Fix | Delete
}
[15086] Fix | Delete
[15087] Fix | Delete
static function get_modules_count( $post_type ) {
[15088] Fix | Delete
$parent_modules = self::get_parent_modules( $post_type );
[15089] Fix | Delete
$child_modules = self::get_child_modules( $post_type );
[15090] Fix | Delete
$overall_count = count( $parent_modules ) + count( $child_modules );
[15091] Fix | Delete
[15092] Fix | Delete
return $overall_count;
[15093] Fix | Delete
}
[15094] Fix | Delete
[15095] Fix | Delete
static function get_modules_js_array( $post_type ) {
[15096] Fix | Delete
$modules = array();
[15097] Fix | Delete
[15098] Fix | Delete
$parent_modules = self::get_parent_modules( $post_type );
[15099] Fix | Delete
if ( ! empty( $parent_modules ) ) {
[15100] Fix | Delete
/**
[15101] Fix | Delete
* Sort modules alphabetically by name.
[15102] Fix | Delete
*/
[15103] Fix | Delete
$sorted_modules = $parent_modules;
[15104] Fix | Delete
[15105] Fix | Delete
uasort( $sorted_modules, array( 'self', 'compare_by_name' ) );
[15106] Fix | Delete
[15107] Fix | Delete
foreach( $sorted_modules as $module ) {
[15108] Fix | Delete
/**
[15109] Fix | Delete
* Replace single and double quotes with %% and || respectively
[15110] Fix | Delete
* to avoid js conflicts
[15111] Fix | Delete
*/
[15112] Fix | Delete
$module_name = str_replace( array( '"', '&quot;', '&#34;', '&#034;' ) , '%%', $module->name );
[15113] Fix | Delete
$module_name = str_replace( array( "'", '&#039;', '&#39;' ) , '||', $module_name );
[15114] Fix | Delete
[15115] Fix | Delete
$modules[] = sprintf(
[15116] Fix | Delete
'{ "title" : "%1$s", "label" : "%2$s"%3$s}',
[15117] Fix | Delete
esc_js( $module_name ),
[15118] Fix | Delete
esc_js( $module->slug ),
[15119] Fix | Delete
( isset( $module->fullwidth ) && $module->fullwidth ? ', "fullwidth_only" : "on"' : '' )
[15120] Fix | Delete
);
[15121] Fix | Delete
}
[15122] Fix | Delete
}
[15123] Fix | Delete
[15124] Fix | Delete
return '[' . implode( ',', $modules ) . ']';
[15125] Fix | Delete
}
[15126] Fix | Delete
[15127] Fix | Delete
static function get_modules_array( $post_type = '', $include_child = false ) {
[15128] Fix | Delete
$modules = array();
[15129] Fix | Delete
$module_icons = self::get_module_icons();
[15130] Fix | Delete
[15131] Fix | Delete
if ( ! empty( $post_type ) ) {
[15132] Fix | Delete
$parent_modules = self::get_parent_modules( $post_type );
[15133] Fix | Delete
[15134] Fix | Delete
if ( $include_child ) {
[15135] Fix | Delete
$parent_modules = array_merge( $parent_modules, self::get_child_modules( $post_type ));
[15136] Fix | Delete
}
[15137] Fix | Delete
[15138] Fix | Delete
if ( ! empty( $parent_modules ) ) {
[15139] Fix | Delete
$sorted_modules = $parent_modules;
[15140] Fix | Delete
}
[15141] Fix | Delete
} else {
[15142] Fix | Delete
$parent_modules = self::get_parent_modules();
[15143] Fix | Delete
[15144] Fix | Delete
if ( $include_child ) {
[15145] Fix | Delete
$parent_modules = array_merge( $parent_modules, self::get_child_modules());
[15146] Fix | Delete
}
[15147] Fix | Delete
[15148] Fix | Delete
if ( ! empty( $parent_modules ) ) {
[15149] Fix | Delete
[15150] Fix | Delete
$all_modules = array();
[15151] Fix | Delete
foreach( $parent_modules as $post_type => $post_type_modules ) {
[15152] Fix | Delete
foreach ( $post_type_modules as $module_slug => $module ) {
[15153] Fix | Delete
$all_modules[ $module_slug ] = $module;
[15154] Fix | Delete
}
[15155] Fix | Delete
}
[15156] Fix | Delete
[15157] Fix | Delete
$sorted_modules = $all_modules;
[15158] Fix | Delete
}
[15159] Fix | Delete
}
[15160] Fix | Delete
[15161] Fix | Delete
if ( ! empty( $sorted_modules ) ) {
[15162] Fix | Delete
/**
[15163] Fix | Delete
* Sort modules alphabetically by name.
[15164] Fix | Delete
*/
[15165] Fix | Delete
uasort( $sorted_modules, array( 'self', 'compare_by_name' ) );
[15166] Fix | Delete
[15167] Fix | Delete
foreach( $sorted_modules as $module ) {
[15168] Fix | Delete
/**
[15169] Fix | Delete
* Replace single and double quotes with %% and || respectively
[15170] Fix | Delete
* to avoid js conflicts
[15171] Fix | Delete
*/
[15172] Fix | Delete
$module_name = str_replace( '"', '%%', $module->name );
[15173] Fix | Delete
$module_name = str_replace( "'", '||', $module_name );
[15174] Fix | Delete
[15175] Fix | Delete
$module_name_plural = str_replace( '"', '%%', empty( $module->plural ) ? $module->name : $module->plural );
[15176] Fix | Delete
$module_name_plural = str_replace( "'", '||', $module_name_plural );
[15177] Fix | Delete
[15178] Fix | Delete
$_module = array(
[15179] Fix | Delete
'title' => esc_attr( $module_name ),
[15180] Fix | Delete
'plural' => esc_attr( $module_name_plural ),
[15181] Fix | Delete
'label' => esc_attr( $module->slug ),
[15182] Fix | Delete
'is_parent' => $module->type === 'child' ? 'off' : 'on',
[15183] Fix | Delete
'is_official_module' => $module->_is_official_module,
[15184] Fix | Delete
'vb_support' => isset( $module->vb_support ) ? $module->vb_support : 'off',
[15185] Fix | Delete
);
[15186] Fix | Delete
[15187] Fix | Delete
if ( isset( $module->fullwidth ) && $module->fullwidth ) {
[15188] Fix | Delete
$_module['fullwidth_only'] = 'on';
[15189] Fix | Delete
}
[15190] Fix | Delete
[15191] Fix | Delete
// Get module icon character (font-icon)
[15192] Fix | Delete
$icon = self::$_->array_get( $module_icons, "{$module->slug}.icon");
[15193] Fix | Delete
[15194] Fix | Delete
if ( $icon ) {
[15195] Fix | Delete
$_module['icon'] = $icon;
[15196] Fix | Delete
}
[15197] Fix | Delete
[15198] Fix | Delete
// Get module icon svg from fetched svg content
[15199] Fix | Delete
$icon_svg = self::$_->array_get( $module_icons, "{$module->slug}.icon_svg");
[15200] Fix | Delete
[15201] Fix | Delete
if ( $icon_svg ) {
[15202] Fix | Delete
$_module['icon_svg'] = $icon_svg;
[15203] Fix | Delete
}
[15204] Fix | Delete
[15205] Fix | Delete
$modules[] = $_module;
[15206] Fix | Delete
}
[15207] Fix | Delete
}
[15208] Fix | Delete
[15209] Fix | Delete
return $modules;
[15210] Fix | Delete
}
[15211] Fix | Delete
[15212] Fix | Delete
static function get_fb_unsupported_modules() {
[15213] Fix | Delete
$parent_modules = self::get_parent_modules();
[15214] Fix | Delete
$unsupported_modules_array = array();
[15215] Fix | Delete
[15216] Fix | Delete
foreach( $parent_modules as $post_type => $post_type_modules ) {
[15217] Fix | Delete
foreach ( $post_type_modules as $module_slug => $module ) {
[15218] Fix | Delete
if ( ! isset( $module->vb_support ) || 'off' === $module->vb_support ) {
[15219] Fix | Delete
$unsupported_modules_array[] = $module_slug;
[15220] Fix | Delete
}
[15221] Fix | Delete
}
[15222] Fix | Delete
}
[15223] Fix | Delete
[15224] Fix | Delete
return array_unique( $unsupported_modules_array );
[15225] Fix | Delete
}
[15226] Fix | Delete
[15227] Fix | Delete
/**
[15228] Fix | Delete
* Get list of modules that has rich content option
[15229] Fix | Delete
*
[15230] Fix | Delete
* @since 3.18
[15231] Fix | Delete
*
[15232] Fix | Delete
* @return array
[15233] Fix | Delete
*/
[15234] Fix | Delete
static function get_has_content_modules() {
[15235] Fix | Delete
return self::$has_content_modules;
[15236] Fix | Delete
}
[15237] Fix | Delete
[15238] Fix | Delete
/**
[15239] Fix | Delete
* Returns a regex pattern that includes all parent module slugs.
[15240] Fix | Delete
*
[15241] Fix | Delete
* @since 3.1 Renamed from `get_parent_shortcodes()` to `get_parent_slugs_regex()`
[15242] Fix | Delete
* @since 1.0
[15243] Fix | Delete
*
[15244] Fix | Delete
* @param string $post_type
[15245] Fix | Delete
*
[15246] Fix | Delete
* @return string
[15247] Fix | Delete
*/
[15248] Fix | Delete
public static function get_parent_slugs_regex( $post_type = 'page' ) {
[15249] Fix | Delete
$slugs = array();
[15250] Fix | Delete
$parent_modules = self::get_parent_modules( $post_type );
[15251] Fix | Delete
[15252] Fix | Delete
if ( ! empty( $parent_modules ) ) {
[15253] Fix | Delete
foreach( $parent_modules as $module ) {
[15254] Fix | Delete
$slugs[] = $module->slug;
[15255] Fix | Delete
}
[15256] Fix | Delete
}
[15257] Fix | Delete
[15258] Fix | Delete
return implode( '|', $slugs );
[15259] Fix | Delete
}
[15260] Fix | Delete
[15261] Fix | Delete
/**
[15262] Fix | Delete
* Returns a regex pattern that includes all child module slugs.
[15263] Fix | Delete
*
[15264] Fix | Delete
* @since 3.1 Renamed from `get_child_shortcodes()` to `get_child_slugs_regex()`
[15265] Fix | Delete
* @since 1.0
[15266] Fix | Delete
*
[15267] Fix | Delete
* @param string $post_type
[15268] Fix | Delete
*
[15269] Fix | Delete
* @return string
[15270] Fix | Delete
*/
[15271] Fix | Delete
public static function get_child_slugs_regex( $post_type = 'page' ) {
[15272] Fix | Delete
$slugs = array();
[15273] Fix | Delete
$child_modules = self::get_child_modules( $post_type );
[15274] Fix | Delete
[15275] Fix | Delete
if ( ! empty( $child_modules ) ) {
[15276] Fix | Delete
foreach( $child_modules as $slug => $module ) {
[15277] Fix | Delete
if ( ! empty( $slug ) ) {
[15278] Fix | Delete
$slugs[] = $slug;
[15279] Fix | Delete
}
[15280] Fix | Delete
}
[15281] Fix | Delete
}
[15282] Fix | Delete
[15283] Fix | Delete
return implode( '|', $slugs );
[15284] Fix | Delete
}
[15285] Fix | Delete
[15286] Fix | Delete
static function get_child_slugs( $post_type ) {
[15287] Fix | Delete
$child_slugs = array();
[15288] Fix | Delete
$child_modules = self::get_parent_modules( $post_type );
[15289] Fix | Delete
if ( ! empty( $child_modules ) ) {
[15290] Fix | Delete
foreach( $child_modules as $module ) {
[15291] Fix | Delete
if ( ! empty( $module->child_slug ) ) {
[15292] Fix | Delete
$child_slugs[ $module->slug ] = $module->child_slug;
[15293] Fix | Delete
}
[15294] Fix | Delete
}
[15295] Fix | Delete
}
[15296] Fix | Delete
[15297] Fix | Delete
return $child_slugs;
[15298] Fix | Delete
}
[15299] Fix | Delete
[15300] Fix | Delete
public static function get_raw_content_slugs( $post_type ) {
[15301] Fix | Delete
$shortcodes = array();
[15302] Fix | Delete
[15303] Fix | Delete
$parent_modules = self::get_parent_modules( $post_type );
[15304] Fix | Delete
if ( ! empty( $parent_modules ) ) {
[15305] Fix | Delete
foreach( $parent_modules as $module ) {
[15306] Fix | Delete
if ( isset( $module->use_raw_content ) && $module->use_raw_content ) {
[15307] Fix | Delete
$shortcodes[] = $module->slug;
[15308] Fix | Delete
}
[15309] Fix | Delete
}
[15310] Fix | Delete
}
[15311] Fix | Delete
[15312] Fix | Delete
$child_modules = self::get_child_modules( $post_type );
[15313] Fix | Delete
if ( ! empty( $child_modules ) ) {
[15314] Fix | Delete
foreach( $child_modules as $module ) {
[15315] Fix | Delete
if ( isset( $module->use_raw_content ) && $module->use_raw_content ) {
[15316] Fix | Delete
$shortcodes[] = $module->slug;
[15317] Fix | Delete
}
[15318] Fix | Delete
}
[15319] Fix | Delete
}
[15320] Fix | Delete
[15321] Fix | Delete
return implode( '|', $shortcodes );
[15322] Fix | Delete
}
[15323] Fix | Delete
[15324] Fix | Delete
static function get_modules_templates( $post_type, $slugs_array ) {
[15325] Fix | Delete
$all_modules = self::get_parent_and_child_modules( $post_type );
[15326] Fix | Delete
$templates_array = array();
[15327] Fix | Delete
[15328] Fix | Delete
if ( empty( $slugs_array ) ) {
[15329] Fix | Delete
return;
[15330] Fix | Delete
}
[15331] Fix | Delete
[15332] Fix | Delete
foreach ( $slugs_array as $slug ) {
[15333] Fix | Delete
if ( ! isset( $all_modules[ $slug ] ) ) {
[15334] Fix | Delete
return '';
[15335] Fix | Delete
}
[15336] Fix | Delete
[15337] Fix | Delete
$module = $all_modules[ $slug ];
[15338] Fix | Delete
[15339] Fix | Delete
$templates_array[] = array(
[15340] Fix | Delete
'slug' => $slug,
[15341] Fix | Delete
'template' => $module->build_microtemplate(),
[15342] Fix | Delete
);
[15343] Fix | Delete
}
[15344] Fix | Delete
[15345] Fix | Delete
if ( ET_BUILDER_OPTIMIZE_TEMPLATES ) {
[15346] Fix | Delete
$templates_array = array(
[15347] Fix | Delete
'templates' => $templates_array,
[15348] Fix | Delete
'unique' => self::$_unique_bb_keys_values,
[15349] Fix | Delete
);
[15350] Fix | Delete
}
[15351] Fix | Delete
[15352] Fix | Delete
return $templates_array;
[15353] Fix | Delete
}
[15354] Fix | Delete
[15355] Fix | Delete
static function output_templates( $post_type = '', $start_from = 0, $amount = 999 ) {
[15356] Fix | Delete
$all_modules = self::get_parent_and_child_modules( $post_type );
[15357] Fix | Delete
[15358] Fix | Delete
$modules_names = array_keys( $all_modules );
[15359] Fix | Delete
[15360] Fix | Delete
$output = array();
[15361] Fix | Delete
$output['templates'] = array();
[15362] Fix | Delete
[15363] Fix | Delete
if ( ! empty( $all_modules ) ) {
[15364] Fix | Delete
for ( $i = 0; $i < ET_BUILDER_AJAX_TEMPLATES_AMOUNT; $i++ ) {
[15365] Fix | Delete
if ( isset( $modules_names[ $i ] ) ) {
[15366] Fix | Delete
$module = $all_modules[ $modules_names[ $i ] ];
[15367] Fix | Delete
$output['templates'][ $module->slug ] = self::optimize_bb_chunk( $module->build_microtemplate() );
[15368] Fix | Delete
} else {
[15369] Fix | Delete
break;
[15370] Fix | Delete
}
[15371] Fix | Delete
}
[15372] Fix | Delete
}
[15373] Fix | Delete
[15374] Fix | Delete
if ( ET_BUILDER_OPTIMIZE_TEMPLATES ) {
[15375] Fix | Delete
$output['unique'] = self::$_unique_bb_keys_values;
[15376] Fix | Delete
}
[15377] Fix | Delete
return $output;
[15378] Fix | Delete
}
[15379] Fix | Delete
[15380] Fix | Delete
static function get_structure_module_slugs() {
[15381] Fix | Delete
[15382] Fix | Delete
if ( ! empty( self::$structure_module_slugs ) ) {
[15383] Fix | Delete
return self::$structure_module_slugs;
[15384] Fix | Delete
}
[15385] Fix | Delete
[15386] Fix | Delete
$structure_modules = self::get_structure_modules();
[15387] Fix | Delete
self::$structure_module_slugs = array();
[15388] Fix | Delete
foreach( $structure_modules as $structural_module ) {
[15389] Fix | Delete
self::$structure_module_slugs[] = $structural_module->slug;
[15390] Fix | Delete
}
[15391] Fix | Delete
[15392] Fix | Delete
return self::$structure_module_slugs;
[15393] Fix | Delete
}
[15394] Fix | Delete
[15395] Fix | Delete
static function get_structure_modules() {
[15396] Fix | Delete
if ( ! empty( self::$structure_modules ) ) {
[15397] Fix | Delete
return self::$structure_modules;
[15398] Fix | Delete
}
[15399] Fix | Delete
[15400] Fix | Delete
$parent_modules = self::get_parent_modules( 'et_pb_layout' );
[15401] Fix | Delete
self::$structure_modules = array();
[15402] Fix | Delete
foreach ( $parent_modules as $parent_module ) {
[15403] Fix | Delete
if ( isset( $parent_module->is_structure_element ) && $parent_module->is_structure_element ) {
[15404] Fix | Delete
$parent_module->plural = empty( $parent_module->plural ) ? $parent_module->name : $parent_module->plural;
[15405] Fix | Delete
[15406] Fix | Delete
self::$structure_modules[] = $parent_module;
[15407] Fix | Delete
}
[15408] Fix | Delete
}
[15409] Fix | Delete
[15410] Fix | Delete
return self::$structure_modules;
[15411] Fix | Delete
}
[15412] Fix | Delete
[15413] Fix | Delete
/**
[15414] Fix | Delete
* Get a filtered list of modules.
[15415] Fix | Delete
*
[15416] Fix | Delete
* @since 3.10
[15417] Fix | Delete
*
[15418] Fix | Delete
* @param string $post_type Leave empty for any.
[15419] Fix | Delete
* @param string $type 'parent' or 'child'. Leave empty for any.
[15420] Fix | Delete
*
[15421] Fix | Delete
* @return ET_Builder_Element[]
[15422] Fix | Delete
*/
[15423] Fix | Delete
static function get_modules( $post_type = '', $type = '' ) {
[15424] Fix | Delete
$modules = array();
[15425] Fix | Delete
[15426] Fix | Delete
foreach ( self::$modules as $slug => $module ) {
[15427] Fix | Delete
if ( '' !== $post_type && ! in_array( $post_type, $module->post_types ) ) {
[15428] Fix | Delete
continue;
[15429] Fix | Delete
}
[15430] Fix | Delete
[15431] Fix | Delete
if ( '' !== $type && ! $module->type !== $type ) {
[15432] Fix | Delete
continue;
[15433] Fix | Delete
}
[15434] Fix | Delete
[15435] Fix | Delete
$modules[ $slug ] = $module;
[15436] Fix | Delete
}
[15437] Fix | Delete
[15438] Fix | Delete
return $modules;
[15439] Fix | Delete
}
[15440] Fix | Delete
[15441] Fix | Delete
static function get_custom_post_type_fallback_modules( $type = 'parent' ) {
[15442] Fix | Delete
$modules = 'child' === $type ? self::$child_modules : self::$parent_modules;
[15443] Fix | Delete
[15444] Fix | Delete
// Most of the time, page module is expected to be used as disabled post type fallback
[15445] Fix | Delete
if ( isset( $modules['page'] ) ) {
[15446] Fix | Delete
return $modules['page'];
[15447] Fix | Delete
}
[15448] Fix | Delete
[15449] Fix | Delete
// Post module is also expected to be used
[15450] Fix | Delete
if ( isset( $modules['post'] ) ) {
[15451] Fix | Delete
return $modules['post'];
[15452] Fix | Delete
}
[15453] Fix | Delete
[15454] Fix | Delete
// If Divi Builder is disabled for all post types use layout modules as fallback
[15455] Fix | Delete
if ( isset( $modules['et_pb_layout'] ) ) {
[15456] Fix | Delete
return $modules['et_pb_layout'];
[15457] Fix | Delete
}
[15458] Fix | Delete
[15459] Fix | Delete
// If all else fail, use all modules
[15460] Fix | Delete
return self::get_modules();
[15461] Fix | Delete
}
[15462] Fix | Delete
[15463] Fix | Delete
static function get_parent_modules( $post_type = '' ) {
[15464] Fix | Delete
if ( ! empty( $post_type ) ) {
[15465] Fix | Delete
// We get all modules when post type is not enabled so that posts that have
[15466] Fix | Delete
// had their post type support disabled still load all necessary modules.
[15467] Fix | Delete
$parent_modules = ! empty( self::$parent_modules[ $post_type ] )
[15468] Fix | Delete
? self::$parent_modules[ $post_type ]
[15469] Fix | Delete
: self::get_custom_post_type_fallback_modules( 'parent' );
[15470] Fix | Delete
} else {
[15471] Fix | Delete
$parent_modules = self::$parent_modules;
[15472] Fix | Delete
}
[15473] Fix | Delete
[15474] Fix | Delete
return apply_filters( 'et_builder_get_parent_modules', $parent_modules, $post_type );
[15475] Fix | Delete
}
[15476] Fix | Delete
[15477] Fix | Delete
static function get_child_modules( $post_type = '' ) {
[15478] Fix | Delete
if ( ! empty( $post_type ) ) {
[15479] Fix | Delete
// We get all modules when post type is not enabled so that posts that have
[15480] Fix | Delete
// had their post type support disabled still load all necessary modules.
[15481] Fix | Delete
$child_modules = ! empty( self::$child_modules[ $post_type ] )
[15482] Fix | Delete
? self::$child_modules[ $post_type ]
[15483] Fix | Delete
: self::get_custom_post_type_fallback_modules( 'child' );
[15484] Fix | Delete
} else {
[15485] Fix | Delete
$child_modules = self::$child_modules;
[15486] Fix | Delete
}
[15487] Fix | Delete
[15488] Fix | Delete
return apply_filters( 'et_builder_get_child_modules', $child_modules, $post_type );
[15489] Fix | Delete
}
[15490] Fix | Delete
[15491] Fix | Delete
static function get_woocommerce_modules() {
[15492] Fix | Delete
return apply_filters( 'et_builder_get_woocommerce_modules', self::$woocommerce_modules );
[15493] Fix | Delete
}
[15494] Fix | Delete
[15495] Fix | Delete
/**
[15496] Fix | Delete
* Get registered module icons
[15497] Fix | Delete
*
[15498] Fix | Delete
* @since 3.1
[15499] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function