__( 'Business Service Widget', 'business-a' ), ) ); } public function widget( $args , $instance ) { $services_ids = array(); $item_number = 3; for ( $i = 1; $i <= $item_number; $i++ ) { if ( ! empty( $instance["item_id_$i"] ) && absint( $instance["item_id_$i"] ) > 0 ) { $id = absint( $instance["item_id_$i"] ); $services_ids[ $id ]['id'] = $id; $services_ids[ $id ]['icon'] = $instance["item_icon_$i"]; } } if ( ! empty( $services_ids ) ) { $query_args = array( 'posts_per_page' => count( $services_ids ), 'post__in' => wp_list_pluck( $services_ids, 'id' ), 'orderby' => 'post__in', 'post_type' => 'page', 'no_found_rows' => true, ); $all_services = get_posts( $query_args ); if ( ! empty( $all_services ) ) : global $post; foreach ( $all_services as $post ) : setup_postdata( $post ); echo $args['before_widget']; ?>
$this->get_field_id( "item_id_$i" ), 'class' => 'widefat', 'name' => $this->get_field_name( "item_id_$i" ), 'selected' => $instance["item_id_$i"], 'show_option_none' => esc_html__( '— Select —', 'business-a' ), ) ); ?>
" name="get_field_name( "item_icon_$i" ) ); ?>" type="text" value="" />