Greifen Sie auf die Steuerelemente des Standard-Widgets im Anpassungsbereich zu

Ich versuche, auf das Steuerelement eines Standardwidgets im Anpassungsbereich zuzugreifen, nicht auf die Vorschau !
Also habe ich eine testing.js- Datei in eine customize_controls_enqueue_scripts- Aktion eingereiht
/** * Enqueue script for custom customize control. */ function custom_customize_enqueue() { wp_enqueue_script( 'testing', get_template_directory_uri() . '/assets/js/testing.js', array( 'jquery', 'customize-controls' ), false, true ); } add_action( 'customize_controls_enqueue_scripts', 'custom_customize_enqueue' );

Versuchen Sie in dieser Datei test.js, den Container eines Steuerelements wie folgt zu erreichen
alert(wp.customize.control('text_widget_color_setting').container.length);
Alles ist in Ordnung und das Ergebnis von alert ist 1, also erreiche ich die Kontrolle durch das DOM.

Aber wenn ich versuche, den Container eines Standard- Widget-Steuerelements so zu erreichen
alert(wp.customize.control('widget_search-2').container.length);
Ich bekomme Uncaught TypeError: Kann die Eigenschaft ‘container’ von undefined nicht lesen
Ich verstehe, dass ich dieses Standard- Widget-Steuerelement nicht definiert / erstellt habe, aber WP tat, jedoch hat dieses Steuerelement id = “customize-control-widget_search-2” ?!

Der Teil, der mich verrückt macht, ist der, wenn ich versuche:
alert(wp.customize.section('sidebar-widgets-sidebar-1').controls().length);
Das DOM kann alle Steuerelemente des Standard-Widgets in diesem Sidebar-1-Abschnitt sehen, der von WP erstellt wurde!

Vielen Dank im Voraus für jede Hilfe.

Solutions Collecting From Web of "Greifen Sie auf die Steuerelemente des Standard-Widgets im Anpassungsbereich zu"

Sie sollten warten, bis das Steuerelement garantiert erstellt wird. Es gibt ein verzögertes Muster, das Sie verwenden sollten:

 wp.customize.control('widget_search[2]', function( control ) { // ... console.info( control.container ); // ... }); 

Außerdem ist das ID-Format für Widget-Customizer-Steuerelemente widget_search[2] nicht widget_search-2 . Beachten Sie den Unterschied zur DOM-Element-ID.