'8619', 'slug' => 'unakit', 'type' => 'theme', 'public_key' => 'pk_77bd85ff115463236630ab73fdaa0', 'is_premium' => false, 'premium_suffix' => 'Professional', 'has_addons' => false, 'has_paid_plans' => true, 'trial' => array( 'days' => 14, 'is_require_payment' => false, ), 'menu' => array( 'slug' => 'unakit', 'override_exact' => true, 'parent' => array( 'slug' => 'themes.php', ), ), 'navigation' => 'tabs', 'is_live' => true, ) ); } return $freemius; } // Init Freemius. freemius(); // Signal that SDK was initiated. do_action( 'freemius_loaded' ); function freemius_settings_url() { return admin_url( 'themes.php?page=unakit&tab=getting-started' ); } freemius()->add_filter( 'connect_url', 'Unakit\\freemius_settings_url' ); freemius()->add_filter( 'after_skip_url', 'Unakit\\freemius_settings_url' ); freemius()->add_filter( 'after_connect_url', 'Unakit\\freemius_settings_url' ); freemius()->add_filter( 'after_pending_connect_url', 'Unakit\\freemius_settings_url' ); } define( 'UNAKIT_CONTENT_WIDTH', 972 ); /* * LOAD LIB */ include_once ABSPATH . 'wp-admin/includes/class-wp-filesystem-base.php'; include_once ABSPATH . 'wp-admin/includes/class-wp-filesystem-direct.php'; include_once 'includes/class-aria-walker.php'; include_once 'includes/customizer.php'; include_once 'includes/fonts.php'; include_once 'includes/meta.php'; include_once 'includes/widgets.php'; /* * LOAD RESOURCES */ function load_css() { wp_register_style( 'unakit_bootstrap_css', get_template_directory_uri() . '/resources/css/vendor/dist/bootstrap.min.css', array(), false, 'all' ); wp_enqueue_style( 'unakit_bootstrap_css' ); wp_register_style( 'unakit_main_css', get_template_directory_uri() . '/resources/css/dist/main.min.css', array( 'unakit_bootstrap_css' ), false, 'all' ); wp_enqueue_style( 'unakit_main_css' ); wp_register_style( 'fontawesome', get_template_directory_uri() . '/resources/vendor/fontawesome/css/all.min.css', array(), false, 'all' ); wp_enqueue_style( 'fontawesome' ); } add_action( 'wp_enqueue_scripts', 'Unakit\\load_css' ); function load_js() { wp_enqueue_script( 'jquery' ); wp_register_script( 'unakit_ariamenu_js', get_template_directory_uri() . '/resources/js/accessibility-aria-menu.js', 'jquery', false, true ); wp_enqueue_script( 'unakit_ariamenu_js' ); wp_register_script( 'unakit_main_js', get_template_directory_uri() . '/resources/js/main.js', [ 'jquery', 'css_vars_ponyfill_js' ], false, true ); wp_enqueue_script( 'unakit_main_js' ); if ( Customizer::get_mod( 'add_polyfills' ) ) { wp_register_script( 'css_vars_ponyfill_js', get_template_directory_uri() . '/resources/js/vendor/css-vars-ponyfill.js', false, false, true ); wp_enqueue_script( 'css_vars_ponyfill_js' ); wp_register_script( 'unakit_legacy_vars', get_template_directory_uri() . '/resources/js/legacy-vars.js', [ 'css_vars_ponyfill_js', 'unakit_main_js' ], false, true ); wp_enqueue_script( 'unakit_legacy_vars' ); } } add_action( 'wp_enqueue_scripts', 'Unakit\\load_js' ); /* * LOAD EDITOR RESOURCES */ function add_editor_assets() { // Load the theme styles within Gutenberg. wp_register_style( 'unakit_editor_css', get_template_directory_uri() . '/resources/css/dist/style-editor.min.css', array(), false, 'all' ); wp_enqueue_style( 'unakit_editor_css' ); } add_action( 'enqueue_block_editor_assets', 'Unakit\\add_editor_assets' ); /* * THEME OPTIONS */ function theme_support() { add_theme_support( 'title-tag' ); add_theme_support( 'post-thumbnails' ); add_theme_support( 'align-wide' ); add_theme_support( 'custom-logo', [ 'width' => '40', 'height' => '40', 'flex-width' => true, 'flex-height' => false, ] ); add_theme_support( 'automatic-feed-links' ); add_theme_support( 'html5', [ 'comment-list', 'comment-form', 'search-form', 'gallery', 'caption', 'style', 'script' ] ); add_theme_support( 'customize-selective-refresh-widgets' ); add_theme_support( "wp-block-styles" ); add_theme_support( 'responsive-embeds' ); if ( apply_filters( 'unakit_disable_custom_editor_colors', false ) ) { add_theme_support( 'disable-custom-colors' ); } // Use classic widget editor for now remove_theme_support( 'widgets-block-editor' ); } add_action( 'after_setup_theme', 'Unakit\\theme_support' ); if ( !isset( $content_width ) ) { $content_width = UNAKIT_CONTENT_WIDTH; } function custom_customize_enqueue() { wp_enqueue_style( 'custom-customize', get_template_directory_uri() . '/resources/css/dist/customizer.min.css' ); } add_action( 'customize_controls_enqueue_scripts', 'Unakit\\custom_customize_enqueue' ); /* * COLOR PALETTE */ function color_palette() { $neutral_colors = [ 'neutral_white' => [ 'name' => __( 'Neutral White', 'unakit' ), 'color' => '#fff', 'customizable' => false, ], 'neutral_light' => [ 'name' => __( 'Neutral Light', 'unakit' ), 'color' => '#e8e8e8', 'customizable' => false, ], 'neutral' => [ 'name' => __( 'Neutral', 'unakit' ), 'color' => '#9b9b9b', 'customizable' => false, ], 'neutral_dark' => [ 'name' => __( 'Neutral Dark', 'unakit' ), 'color' => '#333', 'customizable' => false, ], 'neutral_black' => [ 'name' => __( 'Neutral Black', 'unakit' ), 'color' => '#000', 'customizable' => false, ], ]; $brand_colors = [ 'brand_primary' => [ 'name' => __( 'Brand Primary', 'unakit' ), 'color' => '#215eac', 'customizable' => true, ], 'brand_secondary' => [ 'name' => __( 'Brand Secondary', 'unakit' ), 'color' => '#0ab58a', 'customizable' => true, ], 'brand_light' => [ 'name' => __( 'Brand Light', 'unakit' ), 'color' => '#cddbf4', 'customizable' => true, ], 'brand_dark' => [ 'name' => __( 'Brand Dark', 'unakit' ), 'color' => '#093268', 'customizable' => true, ], ]; $palette_colors = array_merge( $neutral_colors, $brand_colors ); function apply_custom_palette( $palette_colors ) { // Build editor_color_palette parameter $editor_color_palette = []; foreach ( $palette_colors as $slug => $args ) { if ( !empty($args) && isset( $args['name'] ) && isset( $args['color'] ) ) { $editor_color_palette[] = [ 'name' => $args['name'], 'slug' => $slug, 'color' => $args['color'], ]; } } add_theme_support( 'editor-color-palette', $editor_color_palette ); return $palette_colors; } $palette_colors = apply_custom_palette( $palette_colors ); // Print color CSS add_action( 'wp_head', function () use( $palette_colors ) { insert_color_palette_styles( $palette_colors ); } ); add_action( 'admin_head', function () use( $palette_colors ) { insert_color_palette_styles( $palette_colors ); } ); } add_action( 'after_setup_theme', 'Unakit\\color_palette' ); /** * Prints the css variable definitions. */ function insert_color_palette_styles( $colors ) { $colors = apply_custom_palette( $colors ); ?> _x( 'Primary Menu', 'Menu Label', 'unakit' ), ) ); } add_action( 'after_setup_theme', 'Unakit\\register_menus' ); /** * Reassign menus to renamed menu slugs */ function update_deprecated_menu_theme_locations() { $menu_slug_renames = [ 'header-menu' => 'primary', ]; $nav_menu_locations = get_theme_mod( 'nav_menu_locations', [] ); foreach ( $menu_slug_renames as $old_slug => $new_slug ) { if ( isset( $nav_menu_locations[$old_slug] ) ) { if ( !isset( $nav_menu_locations[$new_slug] ) || $nav_menu_locations[$new_slug] === 0 ) { $nav_menu_locations[$new_slug] = $nav_menu_locations[$old_slug]; unset( $nav_menu_locations[$old_slug] ); set_theme_mod( 'nav_menu_locations', $nav_menu_locations ); } } } } add_action( 'after_setup_theme', 'Unakit\\update_deprecated_menu_theme_locations' ); /* * WIDGET AREAS */ add_action( 'widgets_init', 'Unakit\\Widgets::init' ); /* * ADMIN BAR HEIGHT */ function admin_bar_height() { $admin_bar_height = ( is_admin_bar_showing() ? 32 : 0 ); $admin_bar_height_mobile = ( is_admin_bar_showing() ? 46 : 0 ); ?> ' . wp_kses_post( apply_filters( 'unakit_read_more_text', __( 'Read More »', 'unakit' ) ) ) . ' '; } return $more; } add_filter( 'excerpt_more', 'Unakit\\excerpt_more' ); add_action( 'after_setup_theme', 'Unakit\\Meta::init' ); /* * COMMENTS */ function enqueue_comments_reply() { if ( get_option( 'thread_comments' ) ) { wp_enqueue_script( 'comment-reply' ); } } add_action( 'comment_form_before', 'Unakit\\enqueue_comments_reply' ); /* * BLOCK STYLES */ /** * Enqueue Block Styles Javascript */ function custom_gutenberg_scripts() { wp_enqueue_script( 'unakit_block_styles_script', get_template_directory_uri() . '/resources/js/block.js', array( 'wp-blocks', 'wp-i18n', 'wp-dom-ready', 'wp-edit-post' ), false ); } add_action( 'enqueue_block_editor_assets', 'Unakit\\custom_gutenberg_scripts' ); /** * Enqueue Block Styles Stylesheet */ function custom_gutenberg_styles() { wp_enqueue_style( 'unakit_block_styles_css', get_template_directory_uri() . '/resources/css/dist/block-styles.css' ); } add_action( 'enqueue_block_assets', 'Unakit\\custom_gutenberg_styles' ); add_action( 'enqueue_block_editor_assets', 'Unakit\\custom_gutenberg_styles' ); /** * ADMIN PAGE */ /** * Add a submenu page in the theme menu */ function register_theme_page() { add_theme_page( _x( 'Unakit Theme', 'Admin Page Title', 'unakit' ), _x( 'Unakit Theme', 'Admin Menu Slug', 'unakit' ), 'edit_theme_options', 'unakit', 'Unakit\\theme_page_content', 4 ); } add_action( 'admin_menu', 'Unakit\\register_theme_page' ); /** * Display the content of the admin page */ function theme_page_content() { if ( isset( $_GET['tab'] ) ) { $active_tab = $_GET['tab']; } else { $active_tab = 'getting-started'; } ?>