mkdir( $pbf_dir ); } // Create wpbf-customizer-styles.css file if it doesn't exist, otherwise attempt to update it. if ( ! file_exists( $pbf_dir . 'page-builder-framework/wpbf-customizer-styles.css' ) ) { $wp_filesystem->put_contents( $pbf_dir . 'wpbf-customizer-styles.css', $css, 0644 ); } else { // Override the file only if changes were made in the customizer. if ( $css !== $wp_filesystem->get_contents( $pbf_dir . 'wpbf-customizer-styles.css' ) ) { $wp_filesystem->put_contents( $pbf_dir . 'wpbf-customizer-styles.css', $css, 0644 ); } } } add_action( 'wp_loaded', 'wpbf_create_customizer_css_file' ); /** * Enqueue customizer CSS. */ function wpbf_customizer_frontend_scripts() { $css_output = apply_filters( 'wpbf_css_output', 'inline' ); if ( 'inline' === $css_output ) { $inline_styles = wpbf_generate_css(); wp_add_inline_style( apply_filters( 'wpbf_add_inline_style', 'wpbf-style' ), $inline_styles ); } elseif ( 'file' === $css_output ) { $upload_dir = wp_upload_dir(); $file_path = $upload_dir['basedir'] . '/page-builder-framework/wpbf-customizer-styles.css'; $file_url = $upload_dir['baseurl'] . '/page-builder-framework/wpbf-customizer-styles.css'; if ( file_exists( $file_path ) ) { wp_enqueue_style( 'wpbf-customizer', $file_url, '', filemtime( $file_path ) ); } } } add_action( 'wp_enqueue_scripts', 'wpbf_customizer_frontend_scripts', 11 ); /** * Customizer CSS live preview. */ function wpbf_customizer_preview_css() { if ( ! is_customize_preview() ) { return; } echo ''; } add_action( 'wp_head', 'wpbf_customizer_preview_css', 999 ); /** * Post message. */ function wpbf_customizer_preview_js() { wp_enqueue_script( 'wpbf-postmessage', get_template_directory_uri() . '/inc/customizer/js/postmessage.js', array( 'jquery', 'customize-preview' ), WPBF_VERSION, true ); } add_action( 'customize_preview_init', 'wpbf_customizer_preview_js' ); /** * Enqueue customizer scripts & styles. */ function wpbf_customizer_scripts_styles() { wp_enqueue_style( 'wpbf-customizer', get_template_directory_uri() . '/inc/customizer/css/customizer.css', '', WPBF_VERSION ); wp_enqueue_script( 'wpbf-customizer', get_template_directory_uri() . '/inc/customizer/js/customizer.js', array( 'jquery' ), WPBF_VERSION, true ); wp_enqueue_style( 'responsive-controls', get_template_directory_uri() . '/inc/customizer/css/responsive-controls.css', '', WPBF_VERSION ); wp_enqueue_script( 'responsive-controls', get_template_directory_uri() . '/inc/customizer/js/responsive-controls.js', array( 'jquery' ), WPBF_VERSION, true ); } add_action( 'customize_controls_print_styles', 'wpbf_customizer_scripts_styles' ); // Stop here if WP_Customize_Control doesn't exist. if ( ! class_exists( 'WP_Customize_Control' ) ) { return; } // Custom controls. require get_template_directory() . '/inc/customizer/controls/padding/control-padding.php'; require get_template_directory() . '/inc/customizer/controls/input-slider/control-input-slider.php'; require get_template_directory() . '/inc/customizer/controls/responsive-input/control-responsive-input.php'; require get_template_directory() . '/inc/customizer/controls/responsive-padding/control-responsive-padding.php'; require get_template_directory() . '/inc/customizer/controls/responsive-input-slider/control-responsive-input-slider.php';