'#ffffff', 'default-image' => '', ) ) ); if ( arendelle_is_woocommerce_activated() ) { add_theme_support( 'woocommerce', array( 'thumbnail_image_width' => 295, 'gallery_thumbnail_image_width' => 120, 'single_image_width' => 694, 'product_grid' => array( 'default_columns' => 3, 'default_rows' => 3, ), ) ); add_theme_support( 'wc-product-gallery-zoom' ); add_theme_support( 'wc-product-gallery-lightbox' ); add_theme_support( 'wc-product-gallery-slider' ); } // Gutenberg add_theme_support( 'align-wide' ); add_theme_support( 'responsive-embeds' ); add_editor_style(); add_theme_support( 'editor-color-palette', array( array( 'name' => esc_html__( 'blue', 'arendelle' ), 'slug' => 'blue', 'color' => '#024E82', ), array( 'name' => esc_html__( 'orange', 'arendelle' ), 'slug' => 'orange', 'color' => '#D6763C', ), array( 'name' => esc_html__( 'dark', 'arendelle' ), 'slug' => 'dark', 'color' => '#0c0c0c', ), array( 'name' => esc_html__( 'silver', 'arendelle' ), 'slug' => 'silver', 'color' => '#FBFBFB', ), array( 'name' => esc_html__( 'white', 'arendelle' ), 'slug' => 'white', 'color' => '#ffffff', ), array( 'name' => esc_html__( 'black', 'arendelle' ), 'slug' => 'black', 'color' => '#000000', ) ) ); // Redirect on theme activation if ( is_admin() && 'themes.php' == $pagenow && isset( $_GET['activated'] ) ) { wp_redirect( admin_url( 'themes.php?page=arendelle-theme' ) ); } // Thumbnails add_image_size( 'arendelle_featured_medium', 914, 0, false ); add_image_size( 'arendelle_featured_large', 1240, 0, false ); // Nav menus register_nav_menus( array( 'primary-menu' => esc_html__( 'Primary Menu', 'arendelle' ), 'footer-bottom-menu' => esc_html__( 'Footer Bottom Menu', 'arendelle' ), ) ); // Disable WooCommerce wizard redirect add_filter( 'woocommerce_enable_setup_wizard', '__return_false' ); add_filter( 'woocommerce_show_admin_notice', '__return_false' ); add_filter( 'woocommerce_prevent_automatic_wizard_redirect', '__return_false' ); // Disable Kirki telemetry add_filter( 'kirki_telemetry', '__return_false' ); // Remove admin notices for Instagram Feed update_option( 'sbi_rating_notice', 'dismissed' ); remove_action( 'admin_notices', 'sbi_usage_tracking' ); remove_action( 'admin_notices', 'sbi_usage_opt_in' ); remove_action( 'admin_notices', 'sbi_notices_html' ); } } // theme_setup add_action( 'after_setup_theme', 'arendelle_setup' ); // Update Elementor Defaults if ( 1 != get_option( 'arendelle_elementor_defaults', 0 ) ) { add_option( 'arendelle_elementor_defaults', 0 ); } /** * Update Elementor defaults. */ function arendelle_update_elementor_defaults() { if ( 1 != get_option( 'arendelle_elementor_defaults' ) ) { update_option( 'elementor_cpt_support', array( 'post', 'page', 'theme_template' ) ); update_option( 'elementor_disable_color_schemes', 'yes' ); update_option( 'elementor_disable_typography_schemes', 'yes' ); update_option( 'arendelle_elementor_defaults', 1 ); } } add_action( 'init', 'arendelle_update_elementor_defaults' ); /** * Disable Elementor redirect. */ add_action( 'admin_init', function () { if ( did_action( 'elementor/loaded' ) ) { remove_action( 'admin_init', [ \Elementor\Plugin::$instance->admin, 'maybe_redirect_to_getting_started' ] ); } }, 1 ); /** * Register widget areas. */ function arendelle_widgets_init() { register_sidebar( array( 'name' => esc_html__( 'Blog Sidebar', 'arendelle' ), 'id' => 'arendelle-blog-sidebar', 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', ) ); register_sidebar( array( 'name' => esc_html__( 'Page Sidebar', 'arendelle' ), 'id' => 'arendelle-page-sidebar', 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', ) ); if ( arendelle_is_woocommerce_activated() ) { register_sidebar( array( 'name' => esc_html__( 'Shop Sidebar', 'arendelle' ), 'id' => 'arendelle-shop-sidebar', 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', ) ); } register_sidebar( array( 'name' => esc_html__( 'Newsletter', 'arendelle' ), 'id' => 'arendelle-newsletter', 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', ) ); register_sidebar( array( 'name' => esc_html__( 'Footer Column 1', 'arendelle' ), 'id' => 'arendelle-footer-col-1', 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', ) ); register_sidebar( array( 'name' => esc_html__( 'Footer Column 2', 'arendelle' ), 'id' => 'arendelle-footer-col-2', 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', ) ); register_sidebar( array( 'name' => esc_html__( 'Footer Column 3', 'arendelle' ), 'id' => 'arendelle-footer-col-3', 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', ) ); register_sidebar( array( 'name' => esc_html__( 'Footer Column 4', 'arendelle' ), 'id' => 'arendelle-footer-col-4', 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', ) ); } add_action( 'widgets_init', 'arendelle_widgets_init' ); /** * TGMPA plugins activation. */ if ( is_admin() ) { require_once ARENDELLE_DIR . '/includes/class-tgm-plugin-activation.php'; add_action( 'tgmpa_register', 'arendelle_tgmpa_register_required_plugins' ); } function arendelle_tgmpa_register_required_plugins() { $plugins = array( array( 'name' => 'Kirki', 'slug' => 'kirki', 'required' => false, ), array( 'name' => 'Elementor', 'slug' => 'elementor', 'required' => false, ), array( 'name' => 'WooCommerce', 'slug' => 'woocommerce', 'required' => false, ), array( 'name' => 'Contact Form 7', 'slug' => 'contact-form-7', 'required' => false, ), array( 'name' => 'Smash Balloon Social Photo Feed', 'slug' => 'instagram-feed', 'required' => false, ), array( 'name' => 'MailChimp for WordPress', 'slug' => 'mailchimp-for-wp', 'required' => false, ), array( 'name' => 'YITH WooCommerce Quick View', 'slug' => 'yith-woocommerce-quick-view', 'required' => false, ), array( 'name' => 'YITH WooCommerce Wishlist', 'slug' => 'yith-woocommerce-wishlist', 'required' => false, ) ); $config = array( 'id' => 'tgmpa', 'default_path' => '', 'menu' => 'tgmpa-install-plugins', 'capability' => 'edit_theme_options', 'has_notices' => true, 'dismissable' => true, 'dismiss_msg' => '', 'is_automatic' => true, 'message' => '', 'strings' => array( 'page_title' => esc_html__( 'Install Required Plugins', 'arendelle' ), 'menu_title' => esc_html__( 'Install Plugins', 'arendelle' ), 'installing' => esc_html__( 'Installing Plugin: %s', 'arendelle' ), 'updating' => esc_html__( 'Updating Plugin: %s', 'arendelle' ), 'oops' => esc_html__( 'Something went wrong with the plugin API.', 'arendelle' ), 'return' => esc_html__( 'Return to Required Plugins Installer', 'arendelle' ), 'plugin_activated' => esc_html__( 'Plugin activated successfully.', 'arendelle' ), 'activated_successfully' => esc_html__( 'The following plugin was activated successfully:', 'arendelle' ), 'plugin_already_active' => esc_html__( 'No action taken. Plugin %1$s was already active.', 'arendelle' ), 'plugin_needs_higher_version' => esc_html__( 'Plugin not activated. A higher version of %s is needed for this theme. Please update the plugin.', 'arendelle' ), 'complete' => esc_html__( 'All plugins installed and activated successfully. %1$s', 'arendelle' ), 'dismiss' => esc_html__( 'Dismiss this notice', 'arendelle' ), 'notice_cannot_install_activate' => esc_html__( 'There are one or more required or recommended plugins to install, update or activate.', 'arendelle' ), 'contact_admin' => esc_html__( 'Please contact the administrator of this site for help.', 'arendelle' ), 'nag_type' => 'updated', ), ); tgmpa( $plugins, $config ); } // end of premium logic