L'anteprima del Customizer non aggiorna correttamente il valore di get_option()
Ho un'impostazione in index.php
if(get_option('cb2_blog_home')){
cb_get_blog_links();
}
Questo codice consente di attivare o disattivare l'indice del blog nella home page. La funzione cb_get_blog_links() visualizza l'elenco dei riepiloghi degli articoli del blog.
Nel customizer, ho una casella di controllo per impostare questo valore cb2_blog_home. Tuttavia, non ha alcun effetto. È come se l'opzione fosse sempre attiva.
Qualche idea sul perché?
All'interno di quella funzione, ci sono diverse variabili che sto impostando anche con il customizer. Tutte funzionano perfettamente.
Ecco il codice completo del customizer. Tutto funziona perfettamente tranne l'impostazione del blog home. L'unica cosa che mi viene in mente è che una è una funzione e le altre sono variabili all'interno della funzione.
function cb_customize_register($wp_customize){
$wp_customize->add_section('cb_customizer_blog', array(
'title' => __('Impostazioni Blog del Tema', 'Theme'),
'priority' => 120,
));
//Mostra & Nascondi Link Blog in Home
$wp_customize->add_setting('cb2_blog_home', array(
'default' => '',
'capability' => 'edit_theme_options',
'type' => 'option',
));
$wp_customize->add_control('cb2_blog_home', array(
'label' => __('Abilita Blog Home', 'Theme'),
'section' => 'cb_customizer_blog',
'settings' => 'cb2_blog_home',
'type' => 'checkbox',
'priority' => 125,
));
//Conteggio Post Blog Home
$wp_customize->add_setting('cb2_blog_home_count', array(
'default' => '3',
'capability' => 'edit_theme_options',
'type' => 'option',
));
$wp_customize->add_control('cb2_blog_home_count', array(
'label' => __('Conteggio Post Blog Home', 'Theme'),
'section' => 'cb_customizer_blog',
'settings' => 'cb2_blog_home_count',
'priority' => 130,
));
//Mostra & Nascondi Titolo Blog Home
$wp_customize->add_setting('cb2_blog_home_title_hide', array(
'default' => '',
'capability' => 'edit_theme_options',
'type' => 'option',
));
$wp_customize->add_control('cb2_blog_home_title_hide', array(
'label' => __('Nascondi Titolo Blog Home', 'Theme'),
'section' => 'cb_customizer_blog',
'settings' => 'cb2_blog_home_title_hide',
'type' => 'checkbox',
'priority' => 135,
));
//Mostra & Nascondi Autore Blog
$wp_customize->add_setting('cb2_blog_index_author', array(
'default' => '',
'capability' => 'edit_theme_options',
'type' => 'option',
));
$wp_customize->add_control('cb2_blog_index_author', array(
'label' => __('Nascondi Autore Blog', 'Theme'),
'section' => 'cb_customizer_blog',
'settings' => 'cb2_blog_index_author',
'type' => 'checkbox',
'priority' => 140,
));
//Mostra & Nascondi Data Blog
$wp_customize->add_setting('cb2_blog_index_date', array(
'default' => '',
'capability' => 'edit_theme_options',
'type' => 'option',
));
$wp_customize->add_control('cb2_blog_index_date', array(
'label' => __('Nascondi Data Blog', 'Theme'),
'section' => 'cb_customizer_blog',
'settings' => 'cb2_blog_index_date',
'type' => 'checkbox',
'priority' => 145,
));
}
add_action('customize_register', 'cb_customize_register');

Utilizzi il tipo option per memorizzare le tue impostazioni.
Il Customizer non memorizza i valori predefiniti nel database finché l'utente non fa clic su salva.
