如何使WordPress实时定制器选择通过Ajax自动更新?

时间:2014-08-30 08:50:35

标签: php jquery arrays ajax wordpress

如果我想在我的WordPress主题自定义程序中使用具有不同选项的select选项,我该如何选择在主题上进行实时更改。

所以,我的functions.php文件中有一节如下:

$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' => 'header_section',
        'choices' => array(
            'choice1' => 'Choice 1',
            'choice2' => 'Choice 2',
            'choice3' => 'Choice 3',
            'choice4' => 'Choice 4',
        ),
    )
);

在我的ajax文件中,我有一个这样的部分:

wp.customize( 'menu_type', function( value ) {
    value.bind( function( newval ) {
        $('.someclass').css('border', '1px solid #111');    
    } );
} );

ajax文件中的代码将css更改为所有选项。那么我需要在我的ajax文件中添加什么,所以我可以对" choice1"进行更改。只相反?

1 个答案:

答案 0 :(得分:0)

好的,这是答案:

wp.customize( 'menu_type', function( value ) {
    value.bind( function( newval ) {
        if ( newval == 'choice1' ) {
            $( '.someclass' ).css('border', '1px solid #111'); 
        } else if ( newval == 'choice2' ) {
            $( '.someclass' ).css('border', '1px solid #222'); 
        } else if ( newval == 'choice3' ) {
            $( '.someclass' ).css('border', '1px solid #333'); 
        }
    } );
} );