Deaktivieren Sie die Sortierung der Anpassungssteuerung in Abschnitten

Ich habe einen riesigen Theme Customizer mit mehr als 3000 Steuerelementen und benutze jQuery UI um sie zu gruppieren und zu stylen. Die Sache ist, dass WordPress mein Customizer UI zerstört, wenn es Kontrollen innerhalb von Abschnitten sortiert, und ich muss dies (unbind) deaktivieren.

Ich muss diesen Teil lösen:

$( [ api.panel, api.section, api.control ] ).each( function ( i, values ) { var debouncedReflowPaneContents = _.debounce( api.reflowPaneContents, api.settings.timeouts.reflowPaneContents ); values.bind( 'add', debouncedReflowPaneContents ); values.bind( 'change', debouncedReflowPaneContents ); values.bind( 'remove', debouncedReflowPaneContents ); } );

Ich muss diesen Code von meiner benutzerdefinierten javaSript-Datei überschreiben, die für Customizer UI verantwortlich ist. Ich weiß, wenn ich “api.settings.timeouts.reflowPaneContents” Zeit oder wenn ich “values.bind (‘add’, debuncedReflowPaneContents) zu lösen”; ” Das wird helfen, aber ich weiß nicht, wie ich das machen soll.

Das ist dringend. Bitte helfen Sie!

Grüße, Duke

Solutions Collecting From Web of "Deaktivieren Sie die Sortierung der Anpassungssteuerung in Abschnitten"

Was Sie im Code haben, ist Backbone.js, das mit Underscore.js zusammenpasst.

Die api.panel, api.section, api.control sind Sammlungen

 $( [ api.panel, api.section, api.control ] ).each( function ( i, values ) { var debouncedReflowPaneContents = _.debounce( api.reflowPaneContents, api.settings.timeouts.reflowPaneContents ); values.bind( 'add', debouncedReflowPaneContents ); values.bind( 'change', debouncedReflowPaneContents ); values.bind( 'remove', debouncedReflowPaneContents ); } ); 

Und bind ist eigentlich Backbone Event bind , nicht jQuery. Die jQuery- bind ist für DOM und die Backbone- bind für das Backbone-Objektmodell.

Alles, was Sie tun können, ist, den Katalog der Ereignisse zu überprüfen und zu remove was Sie tun müssen, aber es würde mehr Zeit und Code benötigt, um die Entfernung zu verstehen.

api bedeutet, dass Sie bestimmte functionen geschlossen haben und dies bedeutet in der Regel wp.customize

Sie haben noch nicht die Details [ api.panel, api.section, api.control ] wo Sie [ api.panel, api.section, api.control ] , würde ich nicht erraten.

Nehmen Sie dies und akzeptieren Sie dies als eine hilfreiche Antwort. Sie können das Akzeptieren später einfach zurücksetzen, wenn jemand ein besseres liefert.