Este es el link a la pregunta stackoverflow que os comento.
http://stackoverflow.com/questions/4...stomize-via-js
La traduzco y la copio aquí:
Estoy desarrollando un nuevo Theme de Wordpress y quiero que el administrador pueda cambiar los colores de algunos elementos individualmente y globalmente. Me refiero a que el administrador puede cambiar el color de un elemento en particular o cambiarlos a todos en base a un 'Perfil de color' definido por mi.
He definido todos los settings y controls así:
Código:
function color_customize_register( $wp_customize )
{
$wp_customize->add_section( 'theme_color_controls' , array(
'title' => __( 'Colors controls', 'starter' ),
'priority' => 30
) );
$wp_customize->add_setting( 'top_navbar_background_color' , array(
'default' => '#000000',
'transport' => 'postMessage',
) );
$wp_customize->add_setting( 'footer_background_color' , array(
'default' => '#000000',
'transport' => 'refresh',
) );
$wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'navbar_color', array(
'label' => __( 'Navbar Color', 'starter' ),
'description' => 'Define top navbar background color.',
'section' => 'theme_color_controls',
'settings' => 'top_navbar_background_color',
) ) );
$wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'footer_color', array(
'label' => __( 'Footer Color', 'starter' ),
'description' => 'Define footer background color.',
'section' => 'theme_color_controls',
'settings' => 'footer_background_color',
) ) );
$wp_customize->add_setting(
'menu_type',
array(
'transport' => 'postMessage',
'default' => 'choice1',
)
);
$wp_customize->add_control(
'menu_type',
array(
'type' => 'select',
'label' => 'Select your menu type:',
'section' => 'theme_color_controls',
'description' => 'Load a color profile.',
'choices' => array(
'choice1' => 'Choice 1',
'choice2' => 'Choice 2',
'choice3' => 'Choice 3',
'choice4' => 'Choice 4',
),
)
);
}
add_action( 'customize_register', 'color_customize_register');
También he puesto en cola el script javascript por el cual al seleccionar el 'select' del 'perfil de color' cambiaría los colores individuales de los elementos:
Código:
( function( $ ) {
wp.customize( 'menu_type', function( value ) {
value.bind( function( newval ) {
DO SOMETHING.
} );
} );
En la parte de 'DO SOMETHINGS' en el archivo JS no soy capaz de asignar un valor a los demás settings. He intentado poner un 'alert' para comprobar si todo va bien hasta entonces y funciona bien, pero desafortunadamente no encontré información acerca de asignar un valor a un setting desde JS.
¿Es posible hacer eso? ¿Cómo se haría?
Gracias por leer.