wie man den Wert einer Auswahlbox in einem benutzerdefinierten Widget wordpress erhält

Ich versuche ein benutzerdefiniertes Widget zu erstellen. Meine Codes sind wie folgt:

class techno_widget extends WP_Widget { function __construct() { parent::__construct( 'techno_widget', __('Recent Full Post', 'techno_widget_domain'), array( 'description' => __( 'A full post will be appeared on Sidebar', 'techno_widget_domain' ), ) ); } public function widget( $args, $instance ) { $title = apply_filters( 'widget_title', $instance['title'] ); $blog-title = $instance['blog-title']; echo $args['before_widget']; if ( ! empty( $title ) ) echo $args['before_title'] . $title . $args['after_title']; echo $instance['blog-title']; echo $args['after_widget']; } public function form( $instance ) { if ( isset( $instance[ 'title' ] ) ) { $title = $instance[ 'title' ]; } else { $title = __( 'New title', 'wpb_widget_domain' ); } $blog-title = $instance[ 'blog-title' ]; ?> 

<label for="get_field_id( 'blog-title' ); ?>"> <select class="widefat" id="get_field_id( 'blog-title' ); ?>" name="get_field_name( 'blog-title' ); ?>"> 'post', )); if($fullpost->have_posts()): while($fullpost->have_posts()): $fullpost->the_post(); ?> <option value="">

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

<?php } public function update( $new_instance, $old_instance ) { $instance = array(); $instance['title'] = ( ! empty( $new_instance['title'] ) ) ? strip_tags( $new_instance['title'] ) : ''; return $instance; } function techno_load_widget() { register_widget( 'techno_widget' ); } add_action( 'widgets_init', 'techno_load_widget' );

Jetzt zeigt WordPress einen Fehler an. Es sagt,

Parse-Fehler: Syntaxerrors, unerwarteter ‘=’ in C: \ xampp \ htdocs \ wpexperiment \ wp-content \ themes \ rechtsanwalt \ functions.php in Zeile 87

Was ist falsch an meinem Code? Wie kann ich den Wert meiner Auswahlbox erhalten?

Solutions Collecting From Web of "wie man den Wert einer Auswahlbox in einem benutzerdefinierten Widget wordpress erhält"

Sie haben die geschweifte techno_widget der class techno_widget , müssen die function techno_load_widget außerhalb der class techno_widget und haben die Variable $ blog-title wrong. You can't declare variable with deklariert wrong. You can't declare variable with wrong. You can't declare variable withwrong. You can't declare variable with . It is core . It is core PHP-Konvention. Also überschreibe ich deinen Code wie unten-

 class techno_widget extends WP_Widget { function __construct() { parent::__construct( 'techno_widget', __('Recent Full Post', 'techno_widget_domain'), array( 'description' => __( 'A full post will be appeared on Sidebar', 'techno_widget_domain' ), ) ); } public function widget( $args, $instance ) { $title = apply_filters( 'widget_title', $instance['title'] ); $blog_title = $instance['blog_title']; echo $args['before_widget']; if ( ! empty( $title ) ) echo $args['before_title'] . $title . $args['after_title']; echo $instance['blog_title']; echo $args['after_widget']; } public function form( $instance ) { if ( isset( $instance[ 'title' ] ) ) { $title = $instance[ 'title' ]; } else { $title = __( 'New title', 'wpb_widget_domain' ); } $blog_title = $instance[ 'blog_title' ]; ?> 

< ?php } public function update( $new_instance, $old_instance ) { $instance = array(); $instance['title'] = ( ! empty( $new_instance['title'] ) ) ? strip_tags( $new_instance['title'] ) : ''; return $instance; } } function techno_load_widget() { register_widget( 'techno_widget' ); } add_action( 'widgets_init', 'techno_load_widget' );

Und das hat funktioniert. Hier ist der Screenshot Bildbeschreibung hier eingeben

Jetzt können Sie diesen Code wie gewünscht ändern. Aber ich denke, wo Sie $instance['blog-title'] (in meinem Code ist das $instance['blog_title'] ), könnten Sie $instance['title'] .

Und Sie können die Eingabe als Eingabe von anderen Eingabefeldern erhalten. Für weitere Informationen bitte google es.