web-dev-qa-db-fra.com

Customizer API et add_panel (). Le panneau ne montre pas

J'essaie d'ajouter un panneau à mon personnaliseur, mais le code ci-dessous ne fonctionne pas (le panneau ne s'affiche pas dans le conteneur du personnalisateur). Mon code:

add_action( 'customize_register', 'customizer_test' );
function customizer_test($wp_customize) {
    $wp_customize->add_panel( 'panel_id', array(
        'priority'       => 10,
        'capability'     => 'edit_theme_options',
        'title'          => __('Theme Options', 'mytheme'),
        'description'    => __('Several settings pertaining my theme', 'mytheme'),
    ) );
    //sections
    $wp_customize->add_section( 'header_settings', array(
        'priority'       => 10,
        'capability'     => 'edit_theme_options',
        'title'          => __('Header Settings', 'mytheme'),
        'description'    =>  __('Header elements configuration', 'mytheme'),
        'panel'  => 'panel_id',
    ) );

    $wp_customize->add_section( 'footer_settings', array(
        'priority'       => 10,
        'capability'     => 'edit_theme_options',
        'title'          => __('Footer Settings', 'mytheme'),
        'description'    =>  __('Footer elements configuration', 'mytheme'),
        'panel'  => 'panel_id',
    ) );

}
1
Michał Kalkowski

Vous voulez add_setting et add_control sur votre panneau pour fonctionner.

Par exemple:

function panel($wp_customize){

$wp_customize->add_panel('some_panel',array(
    'title'=>'Panel1',
    'description'=> 'This is panel Description',
    'priority'=> 10,
));


$wp_customize->add_section('section',array(
    'title'=>'section',
    'priority'=>10,
    'panel'=>'some_panel',
));


$wp_customize->add_setting('setting_demo',array(
    'defaule'=>'a',
));


$wp_customize->add_control('contrl_demo',array(
    'label'=>'Text',
    'type'=>'text',
    'section'=>'section',
    'settings'=>'setting_demo',
));}   add_action('customize_register','panel');
5
thangavel .R

Commencez par utiliser un identifiant différent pour votre panneau que panel_id.

Vos sections ne s'afficheront pas sans contrôles et paramètres associés, et les panneaux ne s'afficheront pas sans sections associées.

Essayez d'ajouter des contrôles à chaque section et cela devrait résoudre votre problème.

3
Calvin Koepke