__( 'A widget that shows article contributors', 'accesspress-mag' )
)
);
}
/**
* Helper function that holds widget fields
* Array is used in update and form functions
*/
private function widget_fields() {
$fields = array(
'contributors_title' => array(
'accesspress_mag_widgets_name' => 'contributors_title',
'accesspress_mag_widgets_title' => __( 'Title', 'accesspress-mag' ),
'accesspress_mag_widgets_field_type' => 'title',
),
);
return $fields;
}
/**
* 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) {
extract($args);
$contributors_title = $instance['contributors_title'];
echo $before_widget;
?>
'all_with_meta',
'orderby'=>'user_nicename',
'role'=>$role
);
$user_query = new WP_User_Query( $user_args );
if ( ! empty( $user_query->results ) ) {
foreach ( $user_query->results as $user ) {
$user_name = $user->display_name;
$user_nickname = $user->user_nicename;
$user_id = $user->ID;
$user_avatar = get_avatar($user_id, '82');
?>
widget_fields();
// Loop through fields
foreach ($widget_fields as $widget_field) {
extract($widget_field);
// Use helper function to get updated field values
$instance[$accesspress_mag_widgets_name] = accesspress_mag_widgets_updated_field_value($widget_field, $new_instance[$accesspress_mag_widgets_name]);
}
return $instance;
}
/**
* Back-end widget form.
*
* @see WP_Widget::form()
*
* @param array $instance Previously saved values from database.
*
* @uses accesspress_pro_widgets_show_widget_field() defined in widget-fields.php
*/
public function form($instance) {
$widget_fields = $this->widget_fields();
// Loop through fields
foreach ($widget_fields as $widget_field) {
// Make array elements available as variables
extract($widget_field);
$accesspress_mag_widgets_field_value = !empty($instance[$accesspress_mag_widgets_name]) ? esc_attr($instance[$accesspress_mag_widgets_name]) : '';
accesspress_mag_widgets_show_widget_field($this, $widget_field, $accesspress_mag_widgets_field_value);
}
}
}