'glob-posts-widget', 'description' => esc_html__( 'Displays list of posts with small thumbnail.', 'glob' ), 'customize_selective_refresh' => true ) ); } function widget( $args, $instance ) { $instance = wp_parse_args( (array) $instance, array( 'number' => 4, 'orderby' => 'date', 'order' => 'desc', ) ); $title = apply_filters( 'widget_title', empty( $instance['title'] ) ? esc_html__( 'Recent Posts', 'glob' ) : $instance['title'], $instance, $this->id_base ); $post_args = array( 'posts_per_page' => absint( $instance['number'] ), 'order' => $instance['order'], 'orderby' => $instance['orderby'], 'post_type' => 'post', 'meta_key' => '_thumbnail_id', ); $query = new WP_Query( $post_args ); echo $args['before_widget']; if ( ! empty( $title ) ) { echo $args['before_title'] . wp_kses_post( $title ) . $args['after_title']; }; if ( $query->have_posts() ) { $time_string = ''; if ( get_the_time( 'U' ) !== get_the_modified_time( 'U' ) ) { $time_string = ''; } ?> esc_html__( 'Recent Posts', 'glob' ), 'number' => 4, 'orderby' => 'date', 'order' => 'desc' ) ); $title = $instance['title']; $number = absint( $instance['number'] ); $orderby = $instance['orderby']; $order = $instance['order']; ?>

'', 'number' => 4, 'orderby' => 'date', 'order' => 'desc', 'skip_featured' => '' ) ); $instance['title'] = sanitize_text_field( $new_instance['title'] ); $instance['number'] = ! absint( $new_instance['number'] ) ? 4 : absint( $new_instance['number'] ); $instance['orderby'] = sanitize_text_field( $new_instance['orderby'] ); $instance['order'] = sanitize_text_field( $new_instance['order'] ); return $instance; } }