Benutzerdefinierte Widgets im Admin-Bereich öffnen sich und schließen sich anschließend an AJAX

Im Widget-Bereich können benutzerdefinierte Widgets, die ich erstellt habe, in die dynamischen Seitenleisten eingefügt werden, aber nachdem die AJAX sie abgelegt hat, verschwindet das Formular, wie im Bild unten gezeigt:

Bildbeschreibung hier eingeben

Hier ist der vollständige Widget-Code unten:

function __construct() { parent::__construct( // Base ID of your widget 'ec-sidebarSearchWidget', // Widget name will appear in UI __('UBM: Sidebar Search', 'sidebar_search_domain'), // Widget description array( 'description' => __( 'Search in sidebar', 'sidebar_search_domain' ), ) ); } // Creating widget front-end // This is where the action happens public function widget( $args, $instance ) { // This is where you run the code and display the output ?> 

<form method="get" name="search_form" id="search_form" action=""> <input type="image" src="/images/sidebar-search.png" alt="Search button">

<label for="get_field_id( 'title' ); ?>"> <input class="widefat" id="get_field_id( 'title' ); ?>" name="get_field_name( 'title' ); ?>" type="text" value="" />

<label for="get_field_id( 'description' ); ?>"> <input class="widefat" id="get_field_id( 'description' ); ?>" name="get_field_name( 'description' ); ?>" type="text" value="" />

<label for="get_field_id( 'action-url' ); ?>"> <input class="widefat" id="get_field_id( 'action-url' ); ?>" name="get_field_name( 'action-url' ); ?>" type="text" value="" />

<label for="get_field_id( 'fixed-block' ); ?>"> <input type="checkbox" name="fixed-block" id="fixed-block" value="yes" checked />

<?php } // Updating widget replacing old instances with new public function update( $new_instance, $old_instance ) { $instance = array(); $instance['title'] = ( ! empty( $new_instance['title'] ) ) ? strip_tags( $new_instance['title'] ) : ''; $instance['description'] = ( ! empty( $new_instance['description'] ) ) ? strip_tags( $new_instance['description'] ) : ''; $instance['action-url'] = ( ! empty( $new_instance['action-url'] ) ) ? strip_tags( $new_instance['action-url'] ) : ''; $instance['fixed-block'] = ( ! empty( $new_instance['fixed-block'] ) ) ? strip_tags( $new_instance['fixed-block'] ) : ''; return $instance; } } // Class wpb_widget ends here // Register and load the widget function sidebar_search_widget() { register_widget( 'search_sidebar_widget' ); } add_action( 'widgets_init', 'sidebar_search_widget' );

Es ist erwähnenswert, dass das Widget erfolgreich in einem Seitenleistenbereich geladen wird, aber sobald es in einem Bereich verwendet wurde, kann es nicht in einem anderen Bereich verwendet werden.

Solutions Collecting From Web of "Benutzerdefinierte Widgets im Admin-Bereich öffnen sich und schließen sich anschließend an AJAX"