__( 'The information of author in detail.', 'blog-postx' ) ] ); } public function widget( $args, $instance ) { extract( $args ); $author_type = isset( $instance['author_type'] ) ? $instance['author_type'] : 'custom'; $widget_title = isset( $instance['widget_title'] ) ? $instance['widget_title'] : ''; $author_name = isset( $instance['author_name'] ) ? $instance['author_name'] : ''; $author_image = isset( $instance['author_image'] ) ? $instance['author_image'] : ''; $author_tag = isset( $instance['author_tag'] ) ? $instance['author_tag'] : ''; $author_url = isset( $instance['author_url'] ) ? $instance['author_url'] : ''; $author_desc = isset( $instance['author_desc'] ) ? $instance['author_desc'] : ''; if( $author_type != 'custom' ) : $author_id = str_replace( 'admin-', '', $author_type ); $author_tag = get_the_author_meta( 'user_nicename', $author_id ); $author_name = get_the_author_meta( 'display_name', $author_id ); $author_desc = get_the_author_meta( 'description', $author_id ); endif; echo wp_kses_post( $before_widget ); if( ! empty( $widget_title ) ) echo wp_kses_post( $before_title ) . esc_html( $widget_title ) . wp_kses_post( $after_title ); ?>
'subscriber', 'fields' => [ 'ID', 'display_name' ] ] ); $admin_users_options['custom'] = esc_html__( 'Custom', 'blog-postx' ); if( $admin_users ) : foreach( $admin_users as $admin_user ) : $admin_users_options['admin-'. $admin_user->ID] = $admin_user->display_name; endforeach; endif; return [ [ 'name' => 'author_type', 'type' => 'select', 'title' => esc_html__( 'Author to Display', 'blog-postx' ), 'description' => esc_html__( 'Custom will allow you to diplay below custom content to add.', 'blog-postx' ), 'options' => $admin_users_options ], [ 'name' => 'widget_title', 'type' => 'text', 'title' => esc_html__( 'Widget Title', 'blog-postx' ), 'description'=> esc_html__( 'Add the widget title here', 'blog-postx' ), 'default' => esc_html__( 'Author Info', 'blog-postx' ) ], [ 'name' => 'author_name', 'type' => 'text', 'title' => esc_html__( 'Author Name', 'blog-postx' ), 'default' => esc_html__( 'Author Name', 'blog-postx' ) ], [ 'name' => 'author_image', 'type' => 'upload', 'title' => esc_html__( 'Author Image', 'blog-postx' ) ], [ 'name' => 'author_tag', 'type' => 'text', 'title' => esc_html__( 'Author Tag', 'blog-postx' ), 'default' => esc_html__( 'Writer', 'blog-postx' ) ], [ 'name' => 'author_url', 'type' => 'url', 'title' => esc_html__( 'Author URL', 'blog-postx' ), 'placeholder' => esc_html__( 'Add url here..', 'blog-postx' ) ], [ 'name' => 'author_desc', 'type' => 'textarea', 'title' => esc_html__( 'Description', 'blog-postx' ), 'default' => esc_html__( 'Lorem ipsum is simply dummy text is simply dummy text Lorem ipsum is simply dummy text..', 'blog-postx' ) ], ]; } public function form( $instance ) { $widget_fields = $this->widget_fields(); foreach( $widget_fields as $widget_field ) : if ( isset( $instance[ $widget_field['name'] ] ) ) { $field_value = $instance[ $widget_field['name'] ]; } else if( isset( $widget_field['default'] ) ) { $field_value = $widget_field['default']; } else { $field_value = ''; } blog_postx_widget_fields( $this, $widget_field, $field_value ); endforeach; } public function update( $new_instance, $old_instance ) { $instance = $old_instance; $widget_fields = $this->widget_fields(); if( ! is_array( $widget_fields ) ) return $instance; foreach( $widget_fields as $widget_field ) : $instance[ $widget_field['name'] ] = blog_postx_sanitize_widget_fields( $widget_field, $new_instance ); endforeach; return $instance; } }