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
File: functions.php
}
[7000] Fix | Delete
[7001] Fix | Delete
return $instance;
[7002] Fix | Delete
}
[7003] Fix | Delete
endif;
[7004] Fix | Delete
[7005] Fix | Delete
/**
[7006] Fix | Delete
* Filter the list of post types the Divi Builder is enabled on based on theme options.
[7007] Fix | Delete
*
[7008] Fix | Delete
* @since 3.10
[7009] Fix | Delete
*
[7010] Fix | Delete
* @param array<string, string> $options
[7011] Fix | Delete
*
[7012] Fix | Delete
* @return array<string, string>
[7013] Fix | Delete
*/
[7014] Fix | Delete
if ( ! function_exists( 'et_divi_filter_enabled_builder_post_type_options' ) ) :
[7015] Fix | Delete
function et_divi_filter_enabled_builder_post_type_options( $options ) {
[7016] Fix | Delete
// Cache results to avoid unnecessary option fetching multiple times per request.
[7017] Fix | Delete
static $stored_options = null;
[7018] Fix | Delete
[7019] Fix | Delete
if ( null === $stored_options ) {
[7020] Fix | Delete
$stored_options = et_get_option( 'et_pb_post_type_integration', array() );
[7021] Fix | Delete
}
[7022] Fix | Delete
[7023] Fix | Delete
return $stored_options;
[7024] Fix | Delete
}
[7025] Fix | Delete
endif;
[7026] Fix | Delete
add_filter( 'et_builder_enabled_builder_post_type_options', 'et_divi_filter_enabled_builder_post_type_options' );
[7027] Fix | Delete
[7028] Fix | Delete
/**
[7029] Fix | Delete
* Caches expensive generation of truncate_post content
[7030] Fix | Delete
*
[7031] Fix | Delete
* @since 3.17.3
[7032] Fix | Delete
*
[7033] Fix | Delete
* @param bool $custom
[7034] Fix | Delete
* @param string $content
[7035] Fix | Delete
* @param WP_Post $post
[7036] Fix | Delete
*
[7037] Fix | Delete
* @return string
[7038] Fix | Delete
*/
[7039] Fix | Delete
if ( ! function_exists( 'et_divi_truncate_post_use_custom_content' ) ) :
[7040] Fix | Delete
function et_divi_truncate_post_use_custom_content( $custom, $content, $post ) {
[7041] Fix | Delete
// If post doesn't use builder, no need to compute a custom value
[7042] Fix | Delete
if ( ! et_pb_is_pagebuilder_used( $post->ID ) ) {
[7043] Fix | Delete
return false;
[7044] Fix | Delete
}
[7045] Fix | Delete
[7046] Fix | Delete
$cached = get_post_meta( $post->ID, '_et_pb_truncate_post', true );
[7047] Fix | Delete
[7048] Fix | Delete
if ( $cached ) {
[7049] Fix | Delete
$cached_date = get_post_meta( $post->ID, '_et_pb_truncate_post_date', true );
[7050] Fix | Delete
$cached_date = $cached_date ? $cached_date : get_post_field( 'post_modified', $post->ID );
[7051] Fix | Delete
$global_modules = array();
[7052] Fix | Delete
[7053] Fix | Delete
$shortcodes = array();
[7054] Fix | Delete
preg_match_all( '/'. get_shortcode_regex() .'/s', $content, $shortcodes );
[7055] Fix | Delete
[7056] Fix | Delete
if ( is_array( $shortcodes ) && isset( $shortcodes[3] ) ) {
[7057] Fix | Delete
foreach ( $shortcodes[3] as $raw_attributes ) {
[7058] Fix | Delete
$attributes = shortcode_parse_atts( $raw_attributes );
[7059] Fix | Delete
$attributes = is_array( $attributes ) ? $attributes : array();
[7060] Fix | Delete
$global_id = (int) et_()->array_get( $attributes, 'global_module', 0 );
[7061] Fix | Delete
[7062] Fix | Delete
if ( $global_id > 0 ) {
[7063] Fix | Delete
$global_modules[] = $global_id;
[7064] Fix | Delete
}
[7065] Fix | Delete
}
[7066] Fix | Delete
}
[7067] Fix | Delete
[7068] Fix | Delete
foreach ( $global_modules as $module_post_id ) {
[7069] Fix | Delete
// Dates are using the Y-m-d H:i:s format so we can compare them as strings for simplicity.
[7070] Fix | Delete
if ( strcmp( get_post_field( 'post_modified', $module_post_id ), $cached_date ) > 0 ) {
[7071] Fix | Delete
// A global module used in the post has been updated more recently than
[7072] Fix | Delete
// the post's cached excerpt so we need to invalidate the cache.
[7073] Fix | Delete
$cached = '';
[7074] Fix | Delete
break;
[7075] Fix | Delete
}
[7076] Fix | Delete
}
[7077] Fix | Delete
}
[7078] Fix | Delete
[7079] Fix | Delete
if ( $cached ) {
[7080] Fix | Delete
return $cached;
[7081] Fix | Delete
}
[7082] Fix | Delete
[7083] Fix | Delete
$custom = apply_filters( 'the_content', $content );
[7084] Fix | Delete
// Save the result because expensive to compute.
[7085] Fix | Delete
update_post_meta( $post->ID, '_et_pb_truncate_post', $custom );
[7086] Fix | Delete
update_post_meta( $post->ID, '_et_pb_truncate_post_date', date( 'Y-m-d H:i:s' ) );
[7087] Fix | Delete
[7088] Fix | Delete
return $custom;
[7089] Fix | Delete
}
[7090] Fix | Delete
endif;
[7091] Fix | Delete
add_filter( 'et_truncate_post_use_custom_content', 'et_divi_truncate_post_use_custom_content', 10, 3 );
[7092] Fix | Delete
[7093] Fix | Delete
/**
[7094] Fix | Delete
* Caches expensive generation of et_first_image
[7095] Fix | Delete
*
[7096] Fix | Delete
* @since 3.17.3
[7097] Fix | Delete
*
[7098] Fix | Delete
* @param bool $custom
[7099] Fix | Delete
* @param string $content
[7100] Fix | Delete
* @param WP_Post $post
[7101] Fix | Delete
*
[7102] Fix | Delete
* @return string
[7103] Fix | Delete
*/
[7104] Fix | Delete
if ( ! function_exists( 'et_divi_first_image_use_custom_content' ) ) :
[7105] Fix | Delete
function et_divi_first_image_use_custom_content( $custom, $content, $post ) {
[7106] Fix | Delete
// If post doesn't use builder, no need to compute a custom value
[7107] Fix | Delete
if ( ! et_pb_is_pagebuilder_used( $post->ID ) ) {
[7108] Fix | Delete
return false;
[7109] Fix | Delete
}
[7110] Fix | Delete
[7111] Fix | Delete
$cached = get_post_meta( $post->ID, '_et_pb_first_image', true );
[7112] Fix | Delete
[7113] Fix | Delete
if ( $cached ) {
[7114] Fix | Delete
return $cached;
[7115] Fix | Delete
}
[7116] Fix | Delete
[7117] Fix | Delete
$custom = apply_filters( 'the_content', $content );
[7118] Fix | Delete
// Save the result because expensive to compute.
[7119] Fix | Delete
update_post_meta( $post->ID, '_et_pb_first_image', $custom );
[7120] Fix | Delete
[7121] Fix | Delete
return $custom;
[7122] Fix | Delete
}
[7123] Fix | Delete
endif;
[7124] Fix | Delete
add_filter( 'et_first_image_use_custom_content', 'et_divi_first_image_use_custom_content', 10, 3 );
[7125] Fix | Delete
[7126] Fix | Delete
/**
[7127] Fix | Delete
* Fired when post is saved in VB / BFB / BB
[7128] Fix | Delete
*
[7129] Fix | Delete
* @since 3.17.3
[7130] Fix | Delete
*
[7131] Fix | Delete
* @param integer $post_id
[7132] Fix | Delete
*
[7133] Fix | Delete
* @return void
[7134] Fix | Delete
*/
[7135] Fix | Delete
if ( ! function_exists( 'et_divi_save_post' ) ) :
[7136] Fix | Delete
function et_divi_save_post( $post_id ) {
[7137] Fix | Delete
if ( ! $post_id ) {
[7138] Fix | Delete
return;
[7139] Fix | Delete
}
[7140] Fix | Delete
[7141] Fix | Delete
// Unset cache
[7142] Fix | Delete
update_post_meta( $post_id, '_et_pb_first_image', false );
[7143] Fix | Delete
update_post_meta( $post_id, '_et_pb_truncate_post', false );
[7144] Fix | Delete
update_post_meta( $post_id, '_et_pb_truncate_post_date', '' );
[7145] Fix | Delete
}
[7146] Fix | Delete
endif;
[7147] Fix | Delete
add_action( 'et_save_post', 'et_divi_save_post', 1 );
[7148] Fix | Delete
[7149] Fix | Delete
if ( ! function_exists( 'et_divi_footer_active_sidebars' ) ):
[7150] Fix | Delete
function et_divi_footer_active_sidebars() {
[7151] Fix | Delete
$et_active_sidebar = array( 2, 3, 4, 5, 6, 7 );
[7152] Fix | Delete
if ( ! is_customize_preview() ) {
[7153] Fix | Delete
if ( ! is_active_sidebar( 2 )
[7154] Fix | Delete
&& ! is_active_sidebar( 3 )
[7155] Fix | Delete
&& ! is_active_sidebar( 4 )
[7156] Fix | Delete
&& ! is_active_sidebar( 5 )
[7157] Fix | Delete
&& ! is_active_sidebar( 6 )
[7158] Fix | Delete
&& ! is_active_sidebar( 7 ) ) {
[7159] Fix | Delete
return false;
[7160] Fix | Delete
}
[7161] Fix | Delete
$footer_columns = et_get_option( 'footer_columns', '4' );
[7162] Fix | Delete
switch ( $footer_columns ) {
[7163] Fix | Delete
case '1':
[7164] Fix | Delete
case '2':
[7165] Fix | Delete
case '3':
[7166] Fix | Delete
case '4':
[7167] Fix | Delete
case '5':
[7168] Fix | Delete
case '6':
[7169] Fix | Delete
$et_active_sidebar = array();
[7170] Fix | Delete
for ( $i = 1; $i <= $footer_columns; $i++ ) {
[7171] Fix | Delete
array_push( $et_active_sidebar, ( $i + 1 ) );
[7172] Fix | Delete
}
[7173] Fix | Delete
break;
[7174] Fix | Delete
case '_1_4__3_4':
[7175] Fix | Delete
case '_3_4__1_4':
[7176] Fix | Delete
case '_1_3__2_3':
[7177] Fix | Delete
case '_2_3__1_3':
[7178] Fix | Delete
case '_3_5__2_5':
[7179] Fix | Delete
case '_2_5__3_5':
[7180] Fix | Delete
$et_active_sidebar = array( 2, 3 );
[7181] Fix | Delete
break;
[7182] Fix | Delete
case '_1_4__1_2':
[7183] Fix | Delete
case '_1_2__1_4':
[7184] Fix | Delete
case '_1_5__3_5':
[7185] Fix | Delete
case '_3_5__1_5':
[7186] Fix | Delete
case '_1_4_1_2_1_4':
[7187] Fix | Delete
case '_1_5_3_5_1_5':
[7188] Fix | Delete
$et_active_sidebar = array( 2, 3, 4 );
[7189] Fix | Delete
break;
[7190] Fix | Delete
case '_1_2__1_6':
[7191] Fix | Delete
case '_1_6__1_2':
[7192] Fix | Delete
$et_active_sidebar = array( 2, 3, 4, 5 );
[7193] Fix | Delete
break;
[7194] Fix | Delete
}
[7195] Fix | Delete
}
[7196] Fix | Delete
[7197] Fix | Delete
return $et_active_sidebar;
[7198] Fix | Delete
}
[7199] Fix | Delete
endif;
[7200] Fix | Delete
[7201] Fix | Delete
/**
[7202] Fix | Delete
* Check if the theme has boxed layout enabled
[7203] Fix | Delete
*
[7204] Fix | Delete
* @return bool
[7205] Fix | Delete
*/
[7206] Fix | Delete
function et_divi_is_boxed_layout() {
[7207] Fix | Delete
return true === et_get_option( 'boxed_layout', false );
[7208] Fix | Delete
}
[7209] Fix | Delete
[7210] Fix | Delete
/**
[7211] Fix | Delete
* Get current theme content container width
[7212] Fix | Delete
*
[7213] Fix | Delete
* @return int
[7214] Fix | Delete
*/
[7215] Fix | Delete
function et_divi_get_content_width() {
[7216] Fix | Delete
$value = absint( et_get_option( 'content_width', 1080 ) );
[7217] Fix | Delete
[7218] Fix | Delete
return ( 1080 === $value && et_divi_is_boxed_layout() ) ? 1200 : $value;
[7219] Fix | Delete
}
[7220] Fix | Delete
[7221] Fix | Delete
/**
[7222] Fix | Delete
* Disable Theme Builder header and footer layouts, if any, on the blank page template.
[7223] Fix | Delete
*
[7224] Fix | Delete
* @since ??
[7225] Fix | Delete
*
[7226] Fix | Delete
* @param array $layouts
[7227] Fix | Delete
*
[7228] Fix | Delete
* @return array
[7229] Fix | Delete
*/
[7230] Fix | Delete
function et_divi_disable_theme_builder_header_footer_on_blank_template( $layouts ) {
[7231] Fix | Delete
if ( ! is_page_template('page-template-blank.php') || empty( $layouts ) ) {
[7232] Fix | Delete
return $layouts;
[7233] Fix | Delete
}
[7234] Fix | Delete
[7235] Fix | Delete
$layouts[ ET_THEME_BUILDER_HEADER_LAYOUT_POST_TYPE ]['id'] = 0;
[7236] Fix | Delete
$layouts[ ET_THEME_BUILDER_HEADER_LAYOUT_POST_TYPE ]['enabled'] = false;
[7237] Fix | Delete
$layouts[ ET_THEME_BUILDER_HEADER_LAYOUT_POST_TYPE ]['override'] = false;
[7238] Fix | Delete
[7239] Fix | Delete
$layouts[ ET_THEME_BUILDER_FOOTER_LAYOUT_POST_TYPE ]['id'] = 0;
[7240] Fix | Delete
$layouts[ ET_THEME_BUILDER_FOOTER_LAYOUT_POST_TYPE ]['enabled'] = false;
[7241] Fix | Delete
$layouts[ ET_THEME_BUILDER_FOOTER_LAYOUT_POST_TYPE ]['override'] = false;
[7242] Fix | Delete
[7243] Fix | Delete
return $layouts;
[7244] Fix | Delete
}
[7245] Fix | Delete
add_filter( 'et_theme_builder_template_layouts', 'et_divi_disable_theme_builder_header_footer_on_blank_template' );
[7246] Fix | Delete
[7247] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function