Permalink
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
89 lines (78 sloc) 1.95 KB
<?php
/**
* Customizer Control: description
*
* @package Astra
* @author Astra
* @copyright Copyright (c) 2019, Astra
* @link https://wpastra.com/
* @since 1.0.0
*/
// Exit if accessed directly.
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
/**
* A text control with validation for CSS units.
*/
class Astra_Control_Description extends WP_Customize_Control {
/**
* The control type.
*
* @access public
* @var string
*/
public $type = 'ast-description';
/**
* The control type.
*
* @access public
* @var string
*/
public $help = '';
/**
* Enqueue control related scripts/styles.
*
* @access public
*/
public function enqueue() {
$css_uri = ASTRA_THEME_URI . 'inc/customizer/custom-controls/description/';
wp_enqueue_style( 'astra-description-css', $css_uri . 'description.css', null, ASTRA_THEME_VERSION );
}
/**
* Refresh the parameters passed to the JavaScript via JSON.
*
* @see WP_Customize_Control::to_json()
*/
public function to_json() {
parent::to_json();
$this->json['label'] = esc_html( $this->label );
$this->json['description'] = $this->description;
$this->json['help'] = $this->help;
}
/**
* An Underscore (JS) template for this control's content (but not its container).
*
* Class variables for this control class are available in the `data` JS object;
* export custom variables by overriding {@see WP_Customize_Control::to_json()}.
*
* @see WP_Customize_Control::print_template()
*
* @access protected
*/
protected function content_template() {
?>
<label class="customizer-text">
<# if ( data.label ) { #>
<span class="customize-control-title">{{{ data.label }}}</span>
<# } #>
<# if ( data.help ) { #>
<span class="ast-description">{{{ data.help }}}</span>
<# } #>
<# if ( data.description ) { #>
<span class="description customize-control-description">{{{ data.description }}}</span>
<# } #>
</label>
<?php
}
}