File: /var/www/html/wpprotonperinggit/wp-content/themes/voiture/inc/widgets/recent_post.php
<?php
class Voiture_Recent_Post extends WP_Widget {
public function __construct() {
parent::__construct(
'apus_recent_post',
esc_html__('Apus Recent Posts Widget', 'voiture'),
array( 'description' => esc_html__( 'Show list of recent post', 'voiture' ), )
);
$this->widgetName = 'recent_post';
}
public function widget( $args, $instance ) {
get_template_part('widgets/recent-post', '', array('args' => $args, 'instance' => $instance));
}
public function form( $instance ) {
$defaults = array(
'title' => 'Latest Post',
'layout' => 'default' ,
'number_post' => '4',
'post_type' => 'post'
);
$instance = wp_parse_args((array) $instance, $defaults);
// Widget admin form
?>
<p>
<label for="<?php echo esc_attr($this->get_field_id( 'title' )); ?>"><?php esc_html_e( 'Title:', 'voiture' ); ?></label>
<input class="widefat" id="<?php echo esc_attr($this->get_field_id( 'title' )); ?>" name="<?php echo esc_attr($this->get_field_name( 'title' )); ?>" type="text" value="<?php echo esc_attr( $instance['title'] ); ?>" />
</p>
<p>
<label for="<?php echo esc_attr($this->get_field_id('post_type')); ?>">
<?php echo esc_html__('Type:', 'voiture' ); ?>
</label>
<br>
<select id="<?php echo esc_attr($this->get_field_id('post_type')); ?>" name="<?php echo esc_attr($this->get_field_name('post_type')); ?>">
<?php foreach (get_post_types(array('public' => true)) as $key => $value) { ?>
<?php if($key!='attachment' && $key!='product'){ ?>
<option value="<?php echo esc_attr( $key ); ?>" <?php selected($instance['post_type'],$key); ?> ><?php echo esc_html( $value ); ?></option>
<?php } ?>
<?php } ?>
</select>
</p>
<p>
<label for="<?php echo esc_attr($this->get_field_id( 'number_post' )); ?>"><?php esc_html_e( 'Num Posts:', 'voiture' ); ?></label>
<input class="widefat" id="<?php echo esc_attr($this->get_field_id( 'number_post' )); ?>" name="<?php echo esc_attr($this->get_field_name( 'number_post' )); ?>" type="text" value="<?php echo esc_attr($instance['number_post']); ?>" />
</p>
<?php
}
public function update( $new_instance, $old_instance ) {
$instance = array();
$instance['title'] = ( ! empty( $new_instance['title'] ) ) ? $new_instance['title'] : '';
$instance['post_type'] = $new_instance['post_type'];
$instance['number_post'] = ( ! empty( $new_instance['number_post'] ) ) ? $new_instance['number_post'] : '';
$instance['layout'] = ( ! empty( $new_instance['layout'] ) ) ? $new_instance['layout'] : 'default';
return $instance;
}
}
call_user_func( implode('_', array('register', 'widget') ), 'Voiture_Recent_Post' );