Estoy enredando con esta API, intentado añadir controles para cambiar los colores de algunos items y me ha surgido un problema.
Cuando eligo un color y guardo la opcion se queda guardada en el personalizador y la previsualizo perfectamente, pero no se actualiza la opción creada con la setting API.
No se si me explicado bien. Lo que pasa es que una vez que le doy a guardar y publicar, el css sigue mostrandome la opcion por defecto.
Les dejo el codigo, solo pongo lo referente a theme customization API, si es relevante alguna parte mas del codigo, avisenme y lo pongo.
Código PHP:
Ver original<?php
function mytheme_customize_register( $wp_customize )
{
$general_option = get_option ('general_option');
$wp_customize->add_setting( '$general_option[color_scheme]' , array( 'default' => '#FFF',
'type' => 'option',
'capability' => 'edit_theme_options',
'transport' => 'postMessage',
) );
$wp_customize->add_section( 'mytheme_color_scheme', array( 'title' => __( 'Color Scheme', 'mytheme' ),
'priority' => 30,
) );
$wp_customize->add_control( new WP_Customize_Color_Control
( $wp_customize, 'link_color', array( 'label' => __( 'Choose a color', 'mytheme' ),
'section' => 'mytheme_color_scheme',
'settings' => '$general_option[color_scheme]',
) ) );
}
add_action( 'customize_register', 'mytheme_customize_register' );
function mytheme_customize_css()
{
$general_option = get_option ('general_option');
?>
<style type="text/css">
#menu li{ background:<?php echo $general_option['color_scheme'] ?>; }
</style>
<?php
}
add_action( 'wp_head', 'mytheme_customize_css');
function mytheme_customizer_live_preview()
{
wp_enqueue_script(
'mytheme-themecustomizer',
get_template_directory_uri().'/scripts/theme-customizer.js',
array( 'jquery','customize-preview' ), '',
true
);
}
add_action( 'customize_preview_init', 'mytheme_customizer_live_preview' );
// AÑADIR EL PERSONALIZADOR DE TEMAS BAJO LA OPCIÓN APARIENCIA DEL MENÚ
add_action('admin_menu', 'add_customizer_to_appearance');
function add_customizer_to_appearance()
{
add_submenu_page('themes.php', 'Personalizador', 'Customizer', 'edit_theme_options', 'customize.php', '', '', 6);
}
?>
Gracias por su ayuda a todos, cada dia sigo aprendiendo y mejorando gracias a la ayuda que ofrecen en este foro.