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
$is_product = function_exists( 'is_product' ) && is_product();
[6500] Fix | Delete
$default_sidebar_class = $is_product ? et_get_option( 'et_pb_woocommerce_product_layout' ) : et_get_option( 'divi_sidebar' );
[6501] Fix | Delete
$post_id = get_queried_object_id();
[6502] Fix | Delete
$is_builder_active = 'on' === get_post_meta( $post_id, '_et_pb_use_builder', true ) || et_core_is_fb_enabled();
[6503] Fix | Delete
$is_blank_page_tpl = is_page_template( 'page-template-blank.php' );
[6504] Fix | Delete
[6505] Fix | Delete
if ( ! $default_sidebar_class ) {
[6506] Fix | Delete
$default_sidebar_class = is_rtl() ? 'et_left_sidebar' : 'et_right_sidebar';
[6507] Fix | Delete
}
[6508] Fix | Delete
[6509] Fix | Delete
// Set Woo shop and taxonomies layout.
[6510] Fix | Delete
if ( class_exists( 'woocommerce' ) && ( is_woocommerce() && ( is_shop() || is_tax() || $is_product ) ) ) {
[6511] Fix | Delete
if ( $is_product ) {
[6512] Fix | Delete
$saved_page_layout = get_post_meta( $post_id, '_et_pb_page_layout', true );
[6513] Fix | Delete
$page_layout = ! $saved_page_layout || ( 'et_full_width_page' === $saved_page_layout && ! $is_builder_active ) ? $default_sidebar_class : $saved_page_layout;
[6514] Fix | Delete
} else {
[6515] Fix | Delete
$page_layout = et_get_option( 'divi_shop_page_sidebar', $default_sidebar_class );
[6516] Fix | Delete
}
[6517] Fix | Delete
} elseif ( ! is_singular() || ( ! ( $page_layout = get_post_meta( $post_id, '_et_pb_page_layout', true ) ) && ! $is_builder_active ) ) { // check for the falsy value not for boolean `false`
[6518] Fix | Delete
// Set post meta layout which will work for all third party plugins.
[6519] Fix | Delete
$page_layout = $default_sidebar_class;
[6520] Fix | Delete
} elseif ( $is_builder_active && ($is_blank_page_tpl || ! $page_layout || is_page() ) ) {
[6521] Fix | Delete
$page_layout = 'et_no_sidebar';
[6522] Fix | Delete
}
[6523] Fix | Delete
[6524] Fix | Delete
// Handle et_no_sidebar class. It should be no_sidebar for all custom post types, or any post type if builder active.
[6525] Fix | Delete
// otherwise apply 'et_full_width_page' class for backward compatibility
[6526] Fix | Delete
if ( 'et_no_sidebar' === $page_layout && is_singular() ) {
[6527] Fix | Delete
if ( et_builder_post_is_of_custom_post_type( $post_id ) || $is_builder_active ) {
[6528] Fix | Delete
$classes[] = 'et_no_sidebar';
[6529] Fix | Delete
} else {
[6530] Fix | Delete
$classes[] = 'et_full_width_page';
[6531] Fix | Delete
}
[6532] Fix | Delete
} else {
[6533] Fix | Delete
// Add the page layout class.
[6534] Fix | Delete
$classes[] = $page_layout;
[6535] Fix | Delete
}
[6536] Fix | Delete
[6537] Fix | Delete
// Maybe add the full width portfolio class.
[6538] Fix | Delete
if ( is_singular( 'project' ) && ( in_array( $page_layout, array( 'et_full_width_page', 'et_no_sidebar' ) ) ) ) {
[6539] Fix | Delete
$classes[] = 'et_full_width_portfolio_page';
[6540] Fix | Delete
}
[6541] Fix | Delete
[6542] Fix | Delete
return $classes;
[6543] Fix | Delete
}
[6544] Fix | Delete
add_filter( 'body_class', 'et_divi_sidebar_class' );
[6545] Fix | Delete
[6546] Fix | Delete
/**
[6547] Fix | Delete
* Custom body classes for handling customizer preview screen
[6548] Fix | Delete
* @return array
[6549] Fix | Delete
*/
[6550] Fix | Delete
function et_divi_customize_preview_class( $classes ) {
[6551] Fix | Delete
if ( is_customize_preview() ) {
[6552] Fix | Delete
// Customizer class name for customizer specific stuff
[6553] Fix | Delete
$classes[] = 'et_is_customize_preview';
[6554] Fix | Delete
[6555] Fix | Delete
// Search icon state
[6556] Fix | Delete
if ( ! et_get_option( 'show_search_icon', true ) ) {
[6557] Fix | Delete
$classes[] = 'et_hide_search_icon';
[6558] Fix | Delete
}
[6559] Fix | Delete
}
[6560] Fix | Delete
[6561] Fix | Delete
return $classes;
[6562] Fix | Delete
}
[6563] Fix | Delete
add_filter( 'body_class', 'et_divi_customize_preview_class' );
[6564] Fix | Delete
[6565] Fix | Delete
function et_modify_shop_page_columns_num( $columns_num ) {
[6566] Fix | Delete
if ( ! et_is_woocommerce_plugin_active() ) {
[6567] Fix | Delete
return $columns_num;
[6568] Fix | Delete
}
[6569] Fix | Delete
[6570] Fix | Delete
// WooCommerce plugin active check ensures that archive function can be used.
[6571] Fix | Delete
$is_archive_page = is_shop() || is_product_category() || is_product_tag();
[6572] Fix | Delete
[6573] Fix | Delete
if ( ! $is_archive_page ) {
[6574] Fix | Delete
return $columns_num;
[6575] Fix | Delete
}
[6576] Fix | Delete
[6577] Fix | Delete
$default_sidebar_class = is_rtl() ? 'et_left_sidebar' : 'et_right_sidebar';
[6578] Fix | Delete
$divi_shop_page_sidebar = et_get_option( 'divi_shop_page_sidebar', $default_sidebar_class );
[6579] Fix | Delete
[6580] Fix | Delete
// Assignment is intentional for readability.
[6581] Fix | Delete
$columns_num = 'et_full_width_page' === $divi_shop_page_sidebar ? 4 : 3;
[6582] Fix | Delete
[6583] Fix | Delete
return $columns_num;
[6584] Fix | Delete
}
[6585] Fix | Delete
add_filter( 'loop_shop_columns', 'et_modify_shop_page_columns_num' );
[6586] Fix | Delete
[6587] Fix | Delete
// WooCommerce
[6588] Fix | Delete
[6589] Fix | Delete
global $pagenow;
[6590] Fix | Delete
if ( is_admin() && isset( $_GET['activated'] ) && $pagenow == 'themes.php' ) {
[6591] Fix | Delete
// Prevent Cache Warning From Being Displayed On First Install
[6592] Fix | Delete
$current_theme_version[ et_get_theme_version() ] = 'ignore' ;
[6593] Fix | Delete
update_option( 'et_pb_cache_notice', $current_theme_version );
[6594] Fix | Delete
[6595] Fix | Delete
add_action( 'init', 'et_divi_woocommerce_image_dimensions', 1 );
[6596] Fix | Delete
}
[6597] Fix | Delete
[6598] Fix | Delete
/**
[6599] Fix | Delete
* Default values for WooCommerce images changed in version 1.3
[6600] Fix | Delete
* Checks if WooCommerce image dimensions have been updated already.
[6601] Fix | Delete
*/
[6602] Fix | Delete
function et_divi_check_woocommerce_images() {
[6603] Fix | Delete
if ( 'checked' === et_get_option( 'divi_1_3_images' ) ) return;
[6604] Fix | Delete
[6605] Fix | Delete
et_divi_woocommerce_image_dimensions();
[6606] Fix | Delete
et_update_option( 'divi_1_3_images', 'checked' );
[6607] Fix | Delete
}
[6608] Fix | Delete
add_action( 'admin_init', 'et_divi_check_woocommerce_images' );
[6609] Fix | Delete
[6610] Fix | Delete
function et_divi_woocommerce_image_dimensions() {
[6611] Fix | Delete
$catalog = array(
[6612] Fix | Delete
'width' => '400',
[6613] Fix | Delete
'height' => '400',
[6614] Fix | Delete
'crop' => 1,
[6615] Fix | Delete
);
[6616] Fix | Delete
[6617] Fix | Delete
$single = array(
[6618] Fix | Delete
'width' => '510',
[6619] Fix | Delete
'height' => '9999',
[6620] Fix | Delete
'crop' => 0,
[6621] Fix | Delete
);
[6622] Fix | Delete
[6623] Fix | Delete
$thumbnail = array(
[6624] Fix | Delete
'width' => '157',
[6625] Fix | Delete
'height' => '157',
[6626] Fix | Delete
'crop' => 1,
[6627] Fix | Delete
);
[6628] Fix | Delete
[6629] Fix | Delete
update_option( 'shop_catalog_image_size', $catalog );
[6630] Fix | Delete
update_option( 'shop_single_image_size', $single );
[6631] Fix | Delete
update_option( 'shop_thumbnail_image_size', $thumbnail );
[6632] Fix | Delete
}
[6633] Fix | Delete
[6634] Fix | Delete
if ( ! function_exists( 'woocommerce_template_loop_product_thumbnail' ) ):
[6635] Fix | Delete
function woocommerce_template_loop_product_thumbnail() {
[6636] Fix | Delete
printf( '<span class="et_shop_image">%1$s<span class="et_overlay"></span></span>',
[6637] Fix | Delete
woocommerce_get_product_thumbnail()
[6638] Fix | Delete
);
[6639] Fix | Delete
}
[6640] Fix | Delete
endif;
[6641] Fix | Delete
[6642] Fix | Delete
function et_divi_output_product_wrapper() {
[6643] Fix | Delete
echo '<div class="clearfix">';
[6644] Fix | Delete
}
[6645] Fix | Delete
[6646] Fix | Delete
function et_divi_output_product_wrapper_end() {
[6647] Fix | Delete
echo '</div><!-- #end wrapper -->';
[6648] Fix | Delete
}
[6649] Fix | Delete
[6650] Fix | Delete
function et_review_gravatar_size( $size ) {
[6651] Fix | Delete
return '80';
[6652] Fix | Delete
}
[6653] Fix | Delete
add_filter( 'woocommerce_review_gravatar_size', 'et_review_gravatar_size' );
[6654] Fix | Delete
[6655] Fix | Delete
[6656] Fix | Delete
function et_divi_output_content_wrapper() {
[6657] Fix | Delete
echo '
[6658] Fix | Delete
<div id="main-content">
[6659] Fix | Delete
<div class="container">
[6660] Fix | Delete
<div id="content-area" class="clearfix">
[6661] Fix | Delete
<div id="left-area">';
[6662] Fix | Delete
}
[6663] Fix | Delete
[6664] Fix | Delete
function et_divi_output_content_wrapper_end() {
[6665] Fix | Delete
$default_sidebar_class = is_rtl() ? 'et_left_sidebar' : 'et_right_sidebar';
[6666] Fix | Delete
$fullwidth_post = is_singular() && 'et_full_width_page' === get_post_meta( get_the_ID(), '_et_pb_page_layout', true );
[6667] Fix | Delete
[6668] Fix | Delete
echo '</div> <!-- #left-area -->';
[6669] Fix | Delete
[6670] Fix | Delete
if ( function_exists( 'woocommerce_get_sidebar' ) ) {
[6671] Fix | Delete
$woo_fullwidth_page = ( is_shop() || is_product_category() || is_product_tag() || is_tax() ) && 'et_full_width_page' === et_get_option( 'divi_shop_page_sidebar', $default_sidebar_class );
[6672] Fix | Delete
if ( ! $fullwidth_post && ! $woo_fullwidth_page ) {
[6673] Fix | Delete
woocommerce_get_sidebar();
[6674] Fix | Delete
}
[6675] Fix | Delete
} else if ( ! $fullwidth_post ) {
[6676] Fix | Delete
get_sidebar();
[6677] Fix | Delete
}
[6678] Fix | Delete
[6679] Fix | Delete
echo '
[6680] Fix | Delete
</div> <!-- #content-area -->
[6681] Fix | Delete
</div> <!-- .container -->
[6682] Fix | Delete
</div> <!-- #main-content -->';
[6683] Fix | Delete
}
[6684] Fix | Delete
[6685] Fix | Delete
function et_add_divi_menu() {
[6686] Fix | Delete
$core_page = add_menu_page( 'Divi', 'Divi', 'edit_theme_options', 'et_divi_options', 'et_build_epanel' );
[6687] Fix | Delete
[6688] Fix | Delete
// Add Theme Options menu only if it's enabled for current user
[6689] Fix | Delete
if ( et_pb_is_allowed( 'theme_options' ) ) {
[6690] Fix | Delete
[6691] Fix | Delete
if ( isset( $_GET['page'] ) && 'et_divi_options' === $_GET['page'] && isset( $_POST['action'] ) ) {
[6692] Fix | Delete
if (
[6693] Fix | Delete
( isset( $_POST['_wpnonce'] ) && wp_verify_nonce( $_POST['_wpnonce'], 'epanel_nonce' ) )
[6694] Fix | Delete
||
[6695] Fix | Delete
( 'reset' === $_POST['action'] && isset( $_POST['_wpnonce_reset'] ) && wp_verify_nonce( $_POST['_wpnonce_reset'], 'et-nojs-reset_epanel' ) )
[6696] Fix | Delete
) {
[6697] Fix | Delete
epanel_save_data( 'js_disabled' ); //saves data when javascript is disabled
[6698] Fix | Delete
}
[6699] Fix | Delete
}
[6700] Fix | Delete
[6701] Fix | Delete
add_submenu_page( 'et_divi_options', esc_html__( 'Theme Options', 'Divi' ), esc_html__( 'Theme Options', 'Divi' ), 'manage_options', 'et_divi_options' );
[6702] Fix | Delete
}
[6703] Fix | Delete
[6704] Fix | Delete
et_theme_builder_add_admin_page( 'et_divi_options' );
[6705] Fix | Delete
[6706] Fix | Delete
// Add Theme Customizer menu only if it's enabled for current user
[6707] Fix | Delete
if ( et_pb_is_allowed( 'theme_customizer' ) ) {
[6708] Fix | Delete
add_submenu_page( 'et_divi_options', esc_html__( 'Theme Customizer', 'Divi' ), esc_html__( 'Theme Customizer', 'Divi' ), 'manage_options', 'customize.php?et_customizer_option_set=theme' );
[6709] Fix | Delete
}
[6710] Fix | Delete
add_submenu_page( 'et_divi_options', esc_html__( 'Role Editor', 'Divi' ), esc_html__( 'Role Editor', 'Divi' ), 'manage_options', 'et_divi_role_editor', 'et_pb_display_role_editor' );
[6711] Fix | Delete
// Add Divi Library menu only if it's enabled for current user
[6712] Fix | Delete
if ( et_pb_is_allowed( 'divi_library' ) ) {
[6713] Fix | Delete
add_submenu_page( 'et_divi_options', esc_html__( 'Divi Library', 'Divi' ), esc_html__( 'Divi Library', 'Divi' ), 'manage_options', 'edit.php?post_type=et_pb_layout' );
[6714] Fix | Delete
}
[6715] Fix | Delete
[6716] Fix | Delete
add_action( "load-{$core_page}", 'et_pb_check_options_access' ); // load function to check the permissions of current user
[6717] Fix | Delete
add_action( "load-{$core_page}", 'et_epanel_hook_scripts' );
[6718] Fix | Delete
add_action( "admin_print_scripts-{$core_page}", 'et_epanel_admin_js' );
[6719] Fix | Delete
add_action( "admin_head-{$core_page}", 'et_epanel_css_admin');
[6720] Fix | Delete
add_action( "admin_print_scripts-{$core_page}", 'et_epanel_media_upload_scripts');
[6721] Fix | Delete
add_action( "admin_head-{$core_page}", 'et_epanel_media_upload_styles');
[6722] Fix | Delete
}
[6723] Fix | Delete
add_action('admin_menu', 'et_add_divi_menu');
[6724] Fix | Delete
[6725] Fix | Delete
function add_divi_customizer_admin_menu() {
[6726] Fix | Delete
if ( ! current_user_can( 'customize' ) ) {
[6727] Fix | Delete
return;
[6728] Fix | Delete
}
[6729] Fix | Delete
[6730] Fix | Delete
global $wp_admin_bar;
[6731] Fix | Delete
[6732] Fix | Delete
$current_url = ( is_ssl() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
[6733] Fix | Delete
$customize_url = add_query_arg( 'url', urlencode( $current_url ), wp_customize_url() );
[6734] Fix | Delete
[6735] Fix | Delete
// add Theme Customizer admin menu only if it's enabled for current user
[6736] Fix | Delete
if ( et_pb_is_allowed( 'theme_customizer' ) ) {
[6737] Fix | Delete
$wp_admin_bar->add_menu( array(
[6738] Fix | Delete
'parent' => 'appearance',
[6739] Fix | Delete
'id' => 'customize-divi-theme',
[6740] Fix | Delete
'title' => esc_html__( 'Theme Customizer', 'Divi' ),
[6741] Fix | Delete
'href' => $customize_url . '&et_customizer_option_set=theme',
[6742] Fix | Delete
'meta' => array(
[6743] Fix | Delete
'class' => 'hide-if-no-customize',
[6744] Fix | Delete
),
[6745] Fix | Delete
) );
[6746] Fix | Delete
}
[6747] Fix | Delete
[6748] Fix | Delete
$wp_admin_bar->remove_menu( 'customize' );
[6749] Fix | Delete
}
[6750] Fix | Delete
add_action( 'admin_bar_menu', 'add_divi_customizer_admin_menu', 999 );
[6751] Fix | Delete
[6752] Fix | Delete
function et_pb_hide_options_menu() {
[6753] Fix | Delete
// do nothing if theme options should be displayed in the menu
[6754] Fix | Delete
if ( et_pb_is_allowed( 'theme_options' ) ) {
[6755] Fix | Delete
return;
[6756] Fix | Delete
}
[6757] Fix | Delete
[6758] Fix | Delete
$theme_version = et_get_theme_version();
[6759] Fix | Delete
[6760] Fix | Delete
wp_enqueue_script( 'divi-custom-admin-menu', get_template_directory_uri() . '/js/menu_fix.js', array( 'jquery' ), $theme_version, true );
[6761] Fix | Delete
}
[6762] Fix | Delete
add_action( 'admin_enqueue_scripts', 'et_pb_hide_options_menu' );
[6763] Fix | Delete
[6764] Fix | Delete
function et_pb_check_options_access() {
[6765] Fix | Delete
// display wp error screen if theme customizer disabled for current user
[6766] Fix | Delete
if ( ! et_pb_is_allowed( 'theme_options' ) ) {
[6767] Fix | Delete
wp_die( esc_html__( "you don't have sufficient permissions to access this page", 'Divi' ) );
[6768] Fix | Delete
}
[6769] Fix | Delete
}
[6770] Fix | Delete
[6771] Fix | Delete
/**
[6772] Fix | Delete
* Divi Support Center
[6773] Fix | Delete
*
[6774] Fix | Delete
* @since ??
[6775] Fix | Delete
*/
[6776] Fix | Delete
function et_add_divi_support_center() {
[6777] Fix | Delete
$support_center = new ET_Core_SupportCenter( 'divi_theme' );
[6778] Fix | Delete
$support_center->init();
[6779] Fix | Delete
}
[6780] Fix | Delete
add_action( 'init', 'et_add_divi_support_center' );
[6781] Fix | Delete
[6782] Fix | Delete
/**
[6783] Fix | Delete
* Allowing blog and portfolio module pagination to work in non-hierarchical singular page.
[6784] Fix | Delete
* Normally, WP_Query based modules wouldn't work in non-hierarchical single post type page
[6785] Fix | Delete
* due to canonical redirect to prevent page duplication which could lead to SEO penalty.
[6786] Fix | Delete
*
[6787] Fix | Delete
* @see redirect_canonical()
[6788] Fix | Delete
*
[6789] Fix | Delete
* @return mixed string|bool
[6790] Fix | Delete
*/
[6791] Fix | Delete
function et_modify_canonical_redirect( $redirect_url, $requested_url ) {
[6792] Fix | Delete
global $post;
[6793] Fix | Delete
[6794] Fix | Delete
$allowed_shortcodes = array( 'et_pb_blog', 'et_pb_portfolio' );
[6795] Fix | Delete
$is_overwrite_canonical_redirect = false;
[6796] Fix | Delete
[6797] Fix | Delete
// Look for $allowed_shortcodes in content. Once detected, set $is_overwrite_canonical_redirect to true
[6798] Fix | Delete
foreach ( $allowed_shortcodes as $shortcode ) {
[6799] Fix | Delete
if ( !empty( $post ) && has_shortcode( $post->post_content, $shortcode ) ) {
[6800] Fix | Delete
$is_overwrite_canonical_redirect = true;
[6801] Fix | Delete
break;
[6802] Fix | Delete
}
[6803] Fix | Delete
}
[6804] Fix | Delete
[6805] Fix | Delete
// Only alter canonical redirect in 2 cases:
[6806] Fix | Delete
// 1) If current page is singular, has paged and $allowed_shortcodes
[6807] Fix | Delete
// 2) If current page is front_page, has page and $allowed_shortcodes
[6808] Fix | Delete
if ( ( is_singular() & ! is_home() && get_query_var( 'paged' ) && $is_overwrite_canonical_redirect ) || ( is_front_page() && get_query_var( 'page' ) && $is_overwrite_canonical_redirect ) ) {
[6809] Fix | Delete
return $requested_url;
[6810] Fix | Delete
}
[6811] Fix | Delete
[6812] Fix | Delete
return $redirect_url;
[6813] Fix | Delete
}
[6814] Fix | Delete
add_filter( 'redirect_canonical', 'et_modify_canonical_redirect', 10, 2 );
[6815] Fix | Delete
[6816] Fix | Delete
/**
[6817] Fix | Delete
* Determines how many related products should be displayed on single product page
[6818] Fix | Delete
* @param array related products arguments
[6819] Fix | Delete
* @return array modified related products arguments
[6820] Fix | Delete
*/
[6821] Fix | Delete
function et_divi_woocommerce_output_related_products_args( $args ) {
[6822] Fix | Delete
$related_posts = 4; // default number
[6823] Fix | Delete
[6824] Fix | Delete
if ( is_singular( 'product' ) ) {
[6825] Fix | Delete
$page_layout = get_post_meta( get_the_ID(), '_et_pb_page_layout', true );
[6826] Fix | Delete
[6827] Fix | Delete
if ( 'et_full_width_page' !== $page_layout ) {
[6828] Fix | Delete
$related_posts = 3; // set to 3 if page has sidebar
[6829] Fix | Delete
}
[6830] Fix | Delete
}
[6831] Fix | Delete
[6832] Fix | Delete
// Modify related and up-sell products args
[6833] Fix | Delete
$args['posts_per_page'] = $related_posts;
[6834] Fix | Delete
$args['columns'] = $related_posts;
[6835] Fix | Delete
[6836] Fix | Delete
return $args;
[6837] Fix | Delete
}
[6838] Fix | Delete
add_filter( 'woocommerce_upsell_display_args', 'et_divi_woocommerce_output_related_products_args' );
[6839] Fix | Delete
add_filter( 'woocommerce_output_related_products_args', 'et_divi_woocommerce_output_related_products_args' );
[6840] Fix | Delete
[6841] Fix | Delete
function et_divi_maybe_change_frontend_locale( $locale ) {
[6842] Fix | Delete
$option_name = 'divi_disable_translations';
[6843] Fix | Delete
$theme_options = get_option( 'et_divi' );
[6844] Fix | Delete
[6845] Fix | Delete
$disable_translations = isset ( $theme_options[ $option_name ] ) ? $theme_options[ $option_name ] : false;
[6846] Fix | Delete
[6847] Fix | Delete
if ( 'on' === $disable_translations ) {
[6848] Fix | Delete
return 'en_US';
[6849] Fix | Delete
}
[6850] Fix | Delete
[6851] Fix | Delete
return $locale;
[6852] Fix | Delete
}
[6853] Fix | Delete
add_filter( 'locale', 'et_divi_maybe_change_frontend_locale' );
[6854] Fix | Delete
[6855] Fix | Delete
/**
[6856] Fix | Delete
* Enable Divi gallery override if user activates it
[6857] Fix | Delete
* @return bool
[6858] Fix | Delete
*/
[6859] Fix | Delete
function et_divi_gallery_layout_enable( $option ) {
[6860] Fix | Delete
$setting = et_get_option( 'divi_gallery_layout_enable' );
[6861] Fix | Delete
[6862] Fix | Delete
return ( 'on' === $setting ) ? true : $option;
[6863] Fix | Delete
}
[6864] Fix | Delete
add_filter( 'et_gallery_layout_enable', 'et_divi_gallery_layout_enable' );
[6865] Fix | Delete
[6866] Fix | Delete
/**
[6867] Fix | Delete
* Enable GB gallery to shortcode conversion
[6868] Fix | Delete
*
[6869] Fix | Delete
* @return bool
[6870] Fix | Delete
*/
[6871] Fix | Delete
function et_divi_gb_gallery_to_shortcode() {
[6872] Fix | Delete
return et_divi_gallery_layout_enable( false );
[6873] Fix | Delete
}
[6874] Fix | Delete
add_filter( 'et_gb_gallery_to_shortcode', 'et_divi_gb_gallery_to_shortcode' );
[6875] Fix | Delete
[6876] Fix | Delete
/**
[6877] Fix | Delete
* Register theme and modules Customizer portability.
[6878] Fix | Delete
*
[6879] Fix | Delete
* @since 2.7.0
[6880] Fix | Delete
*/
[6881] Fix | Delete
function et_divi_register_customizer_portability() {
[6882] Fix | Delete
global $options;
[6883] Fix | Delete
[6884] Fix | Delete
// Make sure the Portability is loaded.
[6885] Fix | Delete
et_core_load_component( 'portability' );
[6886] Fix | Delete
[6887] Fix | Delete
// Load ePanel options.
[6888] Fix | Delete
et_load_core_options();
[6889] Fix | Delete
[6890] Fix | Delete
// Exclude ePanel options.
[6891] Fix | Delete
$exclude = array();
[6892] Fix | Delete
[6893] Fix | Delete
foreach ( $options as $option ) {
[6894] Fix | Delete
if ( isset( $option['id'] ) ) {
[6895] Fix | Delete
$exclude[ $option['id'] ] = true;
[6896] Fix | Delete
}
[6897] Fix | Delete
}
[6898] Fix | Delete
[6899] Fix | Delete
// Register the portability.
[6900] Fix | Delete
et_core_portability_register( 'et_divi_mods', array(
[6901] Fix | Delete
'name' => esc_html__( 'Divi Customizer Settings', 'Divi' ),
[6902] Fix | Delete
'type' => 'options',
[6903] Fix | Delete
'target' => 'et_divi',
[6904] Fix | Delete
'exclude' => $exclude,
[6905] Fix | Delete
'view' => is_customize_preview(),
[6906] Fix | Delete
) );
[6907] Fix | Delete
}
[6908] Fix | Delete
add_action( 'admin_init', 'et_divi_register_customizer_portability' );
[6909] Fix | Delete
[6910] Fix | Delete
function et_register_updates_component() {
[6911] Fix | Delete
et_core_enable_automatic_updates( get_template_directory_uri(), ET_CORE_VERSION );
[6912] Fix | Delete
}
[6913] Fix | Delete
add_action( 'admin_init', 'et_register_updates_component', 9 );
[6914] Fix | Delete
[6915] Fix | Delete
/**
[6916] Fix | Delete
* Register theme and modules Customizer portability link.
[6917] Fix | Delete
*
[6918] Fix | Delete
* @since 2.7.0
[6919] Fix | Delete
*
[6920] Fix | Delete
* @return bool Always return true.
[6921] Fix | Delete
*/
[6922] Fix | Delete
function et_divi_customizer_link() {
[6923] Fix | Delete
if ( is_customize_preview() ) {
[6924] Fix | Delete
echo et_builder_portability_link( 'et_divi_mods', array( 'class' => 'et-core-customize-controls-close' ) );
[6925] Fix | Delete
}
[6926] Fix | Delete
}
[6927] Fix | Delete
add_action( 'customize_controls_print_footer_scripts', 'et_divi_customizer_link' );
[6928] Fix | Delete
[6929] Fix | Delete
/**
[6930] Fix | Delete
* Added body class to make it possible to identify the Divi theme on frontend
[6931] Fix | Delete
* @return array
[6932] Fix | Delete
*/
[6933] Fix | Delete
function et_divi_theme_body_class( $classes ) {
[6934] Fix | Delete
$classes[] = 'et_divi_theme';
[6935] Fix | Delete
[6936] Fix | Delete
return $classes;
[6937] Fix | Delete
}
[6938] Fix | Delete
add_filter( 'body_class', 'et_divi_theme_body_class' );
[6939] Fix | Delete
[6940] Fix | Delete
/**
[6941] Fix | Delete
* Determine if it's a fresh Divi install by checking for the existence of 'divi_logo' key in 'et_divi' options array.
[6942] Fix | Delete
*
[6943] Fix | Delete
* @since ??
[6944] Fix | Delete
*
[6945] Fix | Delete
* @return bool
[6946] Fix | Delete
*/
[6947] Fix | Delete
if ( ! function_exists( 'et_divi_is_fresh_install' ) ):
[6948] Fix | Delete
function et_divi_is_fresh_install() {
[6949] Fix | Delete
return false === et_get_option( 'divi_logo' );
[6950] Fix | Delete
}
[6951] Fix | Delete
endif;
[6952] Fix | Delete
[6953] Fix | Delete
if ( ! function_exists( 'et_get_original_footer_credits' ) ) :
[6954] Fix | Delete
function et_get_original_footer_credits() {
[6955] Fix | Delete
return sprintf( __( 'Designed by %1$s | Powered by %2$s', 'Divi' ), '<a href="http://www.elegantthemes.com" title="Premium WordPress Themes">Elegant Themes</a>', '<a href="http://www.wordpress.org">WordPress</a>' );
[6956] Fix | Delete
}
[6957] Fix | Delete
endif;
[6958] Fix | Delete
[6959] Fix | Delete
if ( ! function_exists( 'et_get_footer_credits' ) ) :
[6960] Fix | Delete
function et_get_footer_credits() {
[6961] Fix | Delete
$original_footer_credits = et_get_original_footer_credits();
[6962] Fix | Delete
[6963] Fix | Delete
$disable_custom_credits = et_get_option( 'disable_custom_footer_credits', false );
[6964] Fix | Delete
[6965] Fix | Delete
if ( $disable_custom_credits ) {
[6966] Fix | Delete
return '';
[6967] Fix | Delete
}
[6968] Fix | Delete
[6969] Fix | Delete
$credits_format = '<%2$s id="footer-info">%1$s</%2$s>';
[6970] Fix | Delete
[6971] Fix | Delete
$footer_credits = et_get_option( 'custom_footer_credits', '' );
[6972] Fix | Delete
[6973] Fix | Delete
if ( '' === trim( $footer_credits ) ) {
[6974] Fix | Delete
return et_get_safe_localization( sprintf( $credits_format, $original_footer_credits, 'p' ) );
[6975] Fix | Delete
}
[6976] Fix | Delete
[6977] Fix | Delete
return et_get_safe_localization( sprintf( $credits_format, $footer_credits, 'div' ) );
[6978] Fix | Delete
}
[6979] Fix | Delete
endif;
[6980] Fix | Delete
[6981] Fix | Delete
if ( ! function_exists( 'et_divi_filter_et_core_is_builder_used_on_current_request' ) ):
[6982] Fix | Delete
function et_divi_filter_et_core_is_builder_used_on_current_request( $is_builder_used ) {
[6983] Fix | Delete
if ( $is_builder_used && ! is_singular() ) {
[6984] Fix | Delete
$is_builder_used = 'on' === et_get_option( 'divi_blog_style', 'false' );
[6985] Fix | Delete
}
[6986] Fix | Delete
[6987] Fix | Delete
return $is_builder_used;
[6988] Fix | Delete
}
[6989] Fix | Delete
add_filter( 'et_core_is_builder_used_on_current_request', 'et_divi_filter_et_core_is_builder_used_on_current_request' );
[6990] Fix | Delete
endif;
[6991] Fix | Delete
[6992] Fix | Delete
if ( ! function_exists( 'et_divi_version_rollback' ) ) :
[6993] Fix | Delete
function et_divi_version_rollback() {
[6994] Fix | Delete
global $themename, $shortname;
[6995] Fix | Delete
static $instance = null;
[6996] Fix | Delete
[6997] Fix | Delete
if ( null === $instance ) {
[6998] Fix | Delete
$instance = new ET_Core_VersionRollback( $themename, $shortname, et_get_theme_version() );
[6999] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function