__( 'A Featured Post Widget', 'halcyon' ), ) // Args ); } /** * Front-end display of widget. * * @see WP_Widget::widget() * * @param array $args Widget arguments. * @param array $instance Saved values from database. */ public function widget( $args, $instance ) { $show_thumbnail = ! empty( $instance['show_thumbnail'] ) ? $instance['show_thumbnail'] : ''; $post_id = ! empty( $instance['post_list'] ) ? $instance['post_list'] : 1 ; $title = ! empty( $instance['title'] ) ? $instance['title'] : ''; $profession = ! empty( $instance['profession'] ) ? $instance['profession'] : ''; if( get_post_type( $post_id ) == 'post' ){ $qry = new WP_Query( "p=$post_id" ); }else{ $qry = new WP_Query( "page_id=$post_id" ); } if( $qry->have_posts() ){ echo $args['before_widget']; while( $qry->have_posts() ){ $qry->the_post(); echo $args['before_title'] . apply_filters( 'widget_title', get_the_title(), $instance, $this->id_base ) . $args['after_title']; ?> ' . esc_html( $title ) . ''; if( $profession ) echo '' . esc_html( $profession ) . ''; the_excerpt(); } echo $args['after_widget']; } wp_reset_postdata(); } /** * Back-end widget form. * * @see WP_Widget::form() * * @param array $instance Previously saved values from database. */ public function form( $instance ) { $postlist[0] = array( 'value' => 0, 'label' => __( '--choose--', 'halcyon' ), ); $arg = array( 'posts_per_page' => -1, 'post_type' => array( 'post', 'page' ) ); $posts = get_posts( $arg ); foreach( $posts as $p ){ $postlist[$p->ID] = array( 'value' => $p->ID, 'label' => $p->post_title ); } $show_thumbnail = ! empty( $instance['show_thumbnail'] ) ? $instance['show_thumbnail'] : ''; $post_list = ! empty( $instance['post_list'] ) ? $instance['post_list'] : 1 ; $title = ! empty( $instance['title'] ) ? $instance['title'] : ''; $profession = ! empty( $instance['profession'] ) ? $instance['profession'] : ''; ?>

/>