81 lines
1.7 KiB
PHP
81 lines
1.7 KiB
PHP
|
<?php
|
||
|
/**
|
||
|
* Custom Code Customizer Options
|
||
|
*
|
||
|
* @package OceanWP WordPress theme
|
||
|
*/
|
||
|
|
||
|
if ( ! defined( 'ABSPATH' ) ) {
|
||
|
exit;
|
||
|
}
|
||
|
|
||
|
if ( ! class_exists( 'OceanWP_Custom_Code_Customizer' ) ) :
|
||
|
|
||
|
class OceanWP_Custom_Code_Customizer {
|
||
|
|
||
|
/**
|
||
|
* Setup class.
|
||
|
*
|
||
|
* @since 1.0
|
||
|
*/
|
||
|
public function __construct() {
|
||
|
|
||
|
add_action( 'customize_register', array( $this, 'customizer_options' ) );
|
||
|
add_action( 'ocean_footer_js', array( $this, 'output_custom_js' ), 9999 );
|
||
|
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Customizer options
|
||
|
*
|
||
|
* @since 1.0.0
|
||
|
*/
|
||
|
public function customizer_options( $wp_customize ) {
|
||
|
|
||
|
/**
|
||
|
* Section
|
||
|
*/
|
||
|
$section = 'ocean_custom_code_panel';
|
||
|
$wp_customize->add_section( $section , array(
|
||
|
'title' => esc_html__( 'Custom CSS/JS', 'ocean-extra' ),
|
||
|
'priority' => 210,
|
||
|
) );
|
||
|
|
||
|
/**
|
||
|
* Custom JS
|
||
|
*/
|
||
|
$wp_customize->add_setting( 'ocean_custom_js', array(
|
||
|
'transport' => 'postMessage',
|
||
|
'sanitize_callback' => false,
|
||
|
) );
|
||
|
|
||
|
$wp_customize->add_control( new WP_Customize_Control( $wp_customize, 'ocean_custom_js', array(
|
||
|
'label' => esc_html__( 'Custom JS', 'ocean-extra' ),
|
||
|
'description' => esc_html__( 'You need to reload to see the changes. No need to add the <script> tags.', 'ocean-extra' ),
|
||
|
'type' => 'textarea',
|
||
|
'section' => $section,
|
||
|
'settings' => 'ocean_custom_js',
|
||
|
'priority' => 10,
|
||
|
) ) );
|
||
|
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Outputs the custom JS
|
||
|
*
|
||
|
* @since 1.0.0
|
||
|
*/
|
||
|
public function output_custom_js( $output ) {
|
||
|
|
||
|
if ( $js = get_theme_mod( 'ocean_custom_js', false ) ) {
|
||
|
$output .= $js;
|
||
|
}
|
||
|
return $output;
|
||
|
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
endif;
|
||
|
|
||
|
return new OceanWP_Custom_Code_Customizer();
|