apply_filters( 'generate_smooth_scroll_elements', array( '.smooth-scroll', 'li.smooth-scroll a', ) ), 'duration' => apply_filters( 'generate_smooth_scroll_duration', 800 ), ) ); } add_filter( 'generate_option_defaults', 'generate_smooth_scroll_default' ); /** * Add the smooth scroll option to our defaults. * * @since 1.6 * * @param array $defaults Existing defaults. * @return array New defaults. */ function generate_smooth_scroll_default( $defaults ) { $defaults['smooth_scroll'] = false; return $defaults; } add_action( 'customize_register', 'generate_smooth_scroll_customizer', 99 ); /** * Add our smooth scroll option to the Customizer. * * @since 1.6 * * @param WP_Customize_Manager $wp_customize Theme Customizer object. */ function generate_smooth_scroll_customizer( $wp_customize ) { if ( ! function_exists( 'generate_get_defaults' ) ) { return; } $defaults = generate_get_defaults(); require_once GP_LIBRARY_DIRECTORY . 'customizer-helpers.php'; $wp_customize->add_setting( 'generate_settings[smooth_scroll]', array( 'default' => $defaults['smooth_scroll'], 'type' => 'option', 'sanitize_callback' => 'generate_premium_sanitize_checkbox', ) ); $wp_customize->add_control( 'generate_settings[smooth_scroll]', array( 'type' => 'checkbox', 'label' => __( 'Smooth scroll', 'gp-premium' ), 'description' => __( 'Initiate smooth scroll on anchor links using the smooth-scroll class.', 'gp-premium' ), 'section' => 'generate_general_section', ) ); }