'sophia_after_dark_latest_posts', 'description' => __( 'A widget to display the latest posts with thumbnail.', 'sophia-after-dark' ), 'customize_selective_refresh' => true, ); parent::__construct( 'sophia_after_dark_latest_posts', __( 'MT: Latest Posts', 'sophia-after-dark' ), $widget_ops ); } /** * Helper function that holds widget fields * Array is used in update and form functions */ private function widget_fields() { $fields = array( 'widget_title' => array( 'sophia_after_dark_widgets_name' => 'widget_title', 'sophia_after_dark_widgets_title' => __( 'Widget title', 'sophia-after-dark' ), 'sophia_after_dark_widgets_field_type' => 'text' ), 'widget_post_order' => array( 'sophia_after_dark_widgets_name' => 'widget_post_order', 'sophia_after_dark_widgets_title' => __( 'Post Order', 'sophia-after-dark' ), 'sophia_after_dark_widgets_default' => 'default', 'sophia_after_dark_widgets_field_type' => 'select', 'sophia_after_dark_widgets_field_options' => array( 'default' => __( 'Default Order', 'sophia-after-dark' ), 'random' => __( 'Random Order', 'sophia-after-dark' ), ) ), 'widget_post_count' => array( 'sophia_after_dark_widgets_name' => 'widget_post_count', 'sophia_after_dark_widgets_title' => __( 'Post Count', 'sophia-after-dark' ), 'sophia_after_dark_widgets_default' => '5', 'sophia_after_dark_widgets_field_type' => 'number' ) ); 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 ); if ( empty( $instance ) ) { return ; } $sophia_after_dark_widget_title = empty( $instance['widget_title'] ) ? '' : $instance['widget_title']; $sophia_after_dark_post_order = empty( $instance['widget_post_order'] ) ? 'default' : $instance['widget_post_order']; $sophia_after_dark_post_count = empty( $instance['widget_post_count'] ) ? '5' : $instance['widget_post_count']; echo $before_widget; ?>