web-dev-qa-db-fra.com

customise_preview_init: écoute des modifications de la zone d'aperçu du Customizer

Je sais que je peux écouter les modifications de paramètres spécifiques provenant de l'aperçu en ajoutant le code JS suivant au crochet customize_preview_init:

wp.customize( 'setting-ID', function ( value ) {
    value.bind( function( val ) {    
      // things go here
    } );
} );

Mais puis-je écouter facilement des modifications ? Ou un groupe de changements? Par exemple, j'ai une tonne de paramètres qui sont tous nommés quelque chose comme: my_settings[setting_a], my_setting[setting_b]

1
rugbert

Oui. Vous pouvez lier à l'événement change l'ensemble de la collection Setting (wp.customize) comme suit:

wp.customize.bind( 'change', function ( setting ) {
    if ( 0 === setting.id.indexOf( 'my_settings[' ) ) {
        doSomethingWithSettingValue( setting.get() );
    }
});
1
Weston Ruter