WordPress.org

Make WordPress Core

Ticket #28477: 28477.test-plugin.php

File 28477.test-plugin.php, 1.1 KB (added by celloexpressions, 6 years ago)

Test plugin that creates a bunch of controls with different types.

Line 
1<?php
2/**
3 * Plugin Name: Customizer Controls Test
4 *
5 */
6
7add_action( 'customize_register', 'celloexpressions_customizer_controls_test' );
8function celloexpressions_customizer_controls_test( $wp_customize ) {
9        $section_id = 'controls_test';
10        $wp_customize->add_section( $section_id , array(
11                'title'    => 'Controls Test',
12                'priority' => 1,
13        ) );
14
15        // All of the input types to test.
16        $types = array( 'text', 'checkbox', 'textarea', 'radio', 'select', 'hidden', 'number', 'range', 'url', 'email', 'search', 'time', 'date', 'week' );
17
18        // Only used for certain input types.
19        $choices = array( '1' => 'Choice 1', '2' => 'Choice 2', '3' => 'Choice 3' );
20        $numerical = array( 'min' => 0, 'max' => 10, 'step' => 2 );
21
22        $i = 0;
23        foreach ( $types as $type ) {
24                $setting_id = $section_id . '_' . $type;
25                $wp_customize->add_setting( $setting_id, array(
26                        'default'           => '',
27                ) );
28
29                $wp_customize->add_control( $setting_id, array(
30                        'label'     => ucfirst( $type ),
31                        'section'   => $section_id,
32                        'type'      => $type,
33                        'choices'   => $choices,
34                        'numerical' => $numerical,
35                        'priority'  => $i,
36                ) );
37                $i++;
38        }
39}