lightspeeddevelopment /
lsx
| 1 | <?php |
||
| 2 | /** |
||
| 3 | * LSX functions and definitions - Customizer - Header Layout. |
||
| 4 | * |
||
| 5 | * @package lsx |
||
| 6 | * @subpackage customizer |
||
| 7 | * @category header-layout |
||
| 8 | */ |
||
| 9 | |||
| 10 | if ( ! defined( 'ABSPATH' ) ) { |
||
|
0 ignored issues
–
show
Coding Style
introduced
by
Loading history...
|
|||
| 11 | exit; |
||
| 12 | } |
||
| 13 | |||
| 14 | if ( ! class_exists( 'WP_Customize_Control' ) ) { |
||
|
0 ignored issues
–
show
|
|||
| 15 | return; |
||
| 16 | } |
||
| 17 | |||
| 18 | if ( ! class_exists( 'LSX_Customize_Header_Layout_Control' ) ) : |
||
|
0 ignored issues
–
show
|
|||
| 19 | |||
| 20 | /** |
||
| 21 | * LSX_Customize_Header_Layout_Control Class |
||
| 22 | * |
||
| 23 | * @package lsx |
||
| 24 | * @subpackage customizer |
||
| 25 | * @category header-layout |
||
| 26 | */ |
||
| 27 | class LSX_Customize_Header_Layout_Control extends WP_Customize_Control { |
||
| 28 | |||
| 29 | public $type = 'layout'; |
||
|
0 ignored issues
–
show
|
|||
| 30 | public $statuses; |
||
|
0 ignored issues
–
show
|
|||
| 31 | public $layouts = array(); |
||
|
0 ignored issues
–
show
|
|||
| 32 | |||
| 33 | public function __construct( $manager, $id, $args = array() ) { |
||
|
0 ignored issues
–
show
|
|||
| 34 | parent::__construct( $manager, $id, $args ); |
||
| 35 | |||
| 36 | if ( ! empty( $args['choices'] ) ) { |
||
|
0 ignored issues
–
show
|
|||
| 37 | $this->layouts = $args['choices']; |
||
| 38 | } |
||
| 39 | } |
||
|
0 ignored issues
–
show
|
|||
| 40 | |||
| 41 | /** |
||
| 42 | * Enqueue scripts/styles for the color picker. |
||
| 43 | */ |
||
| 44 | public function enqueue() { |
||
| 45 | wp_enqueue_script( 'lsx-header-layout-control', get_template_directory_uri() . '/assets/js/admin/customizer-header-layout.js', array( 'jquery' ), LSX_VERSION, true ); |
||
| 46 | } |
||
|
0 ignored issues
–
show
|
|||
| 47 | |||
| 48 | /** |
||
| 49 | * Render output. |
||
| 50 | */ |
||
| 51 | public function render_content() { |
||
| 52 | $post_id = 'customize-control-' . str_replace( '[', '-', str_replace( ']', '', $this->id ) ); |
||
| 53 | $class = 'customize-control customize-control-' . $this->type; |
||
| 54 | $value = $this->value(); |
||
| 55 | ?> |
||
| 56 | <label> |
||
| 57 | <?php |
||
| 58 | if ( ! empty( $this->label ) ) { |
||
|
0 ignored issues
–
show
|
|||
| 59 | ?> |
||
| 60 | <span class="customize-control-title"><?php echo esc_html( $this->label ); ?></span> |
||
| 61 | <?php |
||
| 62 | } |
||
|
0 ignored issues
–
show
|
|||
| 63 | if ( ! empty( $this->description ) ) { |
||
|
0 ignored issues
–
show
|
|||
| 64 | ?> |
||
| 65 | <span class="description customize-control-description"><?php echo esc_html( $this->description ); ?></span> |
||
| 66 | <?php } ?> |
||
| 67 | <div class="header-layouts-selector"> |
||
| 68 | <?php |
||
| 69 | foreach ( $this->layouts as $layout ) { |
||
|
0 ignored issues
–
show
|
|||
| 70 | $sel = 'border: 1px solid transparent;'; |
||
| 71 | if ( $value === $layout ) { |
||
|
0 ignored issues
–
show
|
|||
| 72 | $sel = 'border: 1px solid rgb(43, 166, 203);'; |
||
| 73 | } |
||
|
0 ignored issues
–
show
|
|||
| 74 | echo '<img class="header-layout-button" style="padding:2px;' . esc_attr( $sel ) . '" src="' . esc_attr( get_template_directory_uri() ) . '/assets/images/admin/header-' . esc_attr( $layout ) . '.png" data-option="' . esc_attr( $layout ) . '">'; |
||
| 75 | } |
||
| 76 | ?> |
||
| 77 | <input <?php $this->link(); ?> class="selected-header-layout <?php echo esc_attr( $class ); ?>" id="<?php echo esc_attr( $post_id ); ?>" type="hidden" value="<?php echo esc_attr( $value ); ?>" <?php $this->input_attrs(); ?>> |
||
| 78 | </div> |
||
| 79 | </label> |
||
| 80 | <?php |
||
| 81 | } |
||
|
0 ignored issues
–
show
|
|||
| 82 | |||
| 83 | } |
||
| 84 | |||
| 85 | endif; |
||
| 86 |