ACC SHELL
<?php
add_action( 'widgets_init', 'coffee_portfolio_widget' );
function coffee_portfolio_widget() { register_widget( 'coffee_portfolio_widget' ); }
class coffee_portfolio_widget extends WP_Widget {
function coffee_portfolio_widget() {
$widget_ops = array('classname' => 'coffee_portfolio_widget', 'description' => __('Show portfolio items.', 'coffee'));
$control_ops = array('width' => 300, 'height' => 350, 'id_base' => 'coffee_portfolio_widget');
$this->WP_Widget( 'coffee_portfolio_widget', __('Coffee Portfolio', 'coffee'), $widget_ops, $control_ops );
}
function widget( $args, $instance ) {
extract( $args );
$title = apply_filters('widget_title', $instance['title']);
$number = $instance['number'];
$portfolio_category = $instance['portfolio_category'];
echo $before_widget;
if ( $title ) { echo $before_title . $title . $after_title; }
//
wp_reset_query();
$portfolio_widget_query = new WP_Query(
array(
'post_type' => array('portfolio-type'),
'posts_per_page'=> $number,
'portfolio_category' => $portfolio_category
)
);
echo('<div class="coffee_portfolio_widget_grid"><ul class="clearfix">');
while ( $portfolio_widget_query -> have_posts() ) : $portfolio_widget_query -> the_post();
if(has_post_thumbnail()):
echo('<li>'); ?>
<a href="<?php the_permalink(); ?>" title="<?php echo esc_attr( sprintf( __( 'Permalink to "%s"', 'coffee' ), the_title_attribute( 'echo=0' ) ) ); ?>">
<?php the_post_thumbnail('thumbnail-55x55'); ?>
<div class="entry-media-overlay">
<div class="entry-media-permalink"><i class="icon-link"></i></div>
</div>
</a>
<?php echo('</li>');
endif;
endwhile;
echo('</ul></div>');
wp_reset_query();
//
echo $after_widget;
}
function update( $new_instance, $old_instance ) {
$instance = $old_instance;
$instance['title'] = strip_tags( $new_instance['title'] );
$instance['number'] = $new_instance['number'];
$instance['portfolio_category'] = $new_instance['portfolio_category'];
return $instance;
}
function form( $instance ) {
$defaults = array(
'title' => 'Latest Projects',
'number' => '4',
'portfolio_category' => 'All'
);
$instance = wp_parse_args( (array) $instance, $defaults );
?>
<p>
<label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e('Title:', 'coffee') ?></label>
<input class="widefat" type="text" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" value="<?php echo $instance['title']; ?>" />
</p>
<p>
<label for="<?php echo $this->get_field_id( 'number' ); ?>"><?php _e('Number of Projects:', 'coffee') ?></label>
<select id="<?php echo $this->get_field_id( 'number' ); ?>" name="<?php echo $this->get_field_name( 'number' ); ?>" class="widefat">
<option <?php if ( '-1' == $instance['number'] ) echo 'selected="selected"'; ?> value="-1">All</option>
<option <?php if ( '2' == $instance['number'] ) echo 'selected="selected"'; ?>>2</option>
<option <?php if ( '3' == $instance['number'] ) echo 'selected="selected"'; ?>>3</option>
<option <?php if ( '4' == $instance['number'] ) echo 'selected="selected"'; ?>>4</option>
<option <?php if ( '5' == $instance['number'] ) echo 'selected="selected"'; ?>>5</option>
<option <?php if ( '6' == $instance['number'] ) echo 'selected="selected"'; ?>>6</option>
<option <?php if ( '7' == $instance['number'] ) echo 'selected="selected"'; ?>>7</option>
<option <?php if ( '8' == $instance['number'] ) echo 'selected="selected"'; ?>>8</option>
<option <?php if ( '9' == $instance['number'] ) echo 'selected="selected"'; ?>>9</option>
<option <?php if ( '10' == $instance['number'] ) echo 'selected="selected"'; ?>>10</option>
</select>
</p>
<p>
<label for="<?php echo $this->get_field_id( 'portfolio_category' ); ?>"><?php _e('Category', 'coffee') ?></label>
<select id="<?php echo $this->get_field_id( 'portfolio_category' ); ?>" name="<?php echo $this->get_field_name( 'portfolio_category' ); ?>" class="widefat">
<option value="" <?php if ( '' == $instance['portfolio_category'] ) echo 'selected="selected"'; ?>>All</option>
<?php
$terms = get_terms('portfolio_category');
foreach ($terms as $term) {
echo'<option value="'.$term->slug.'" '.( ($instance['portfolio_category'] == $term->slug) ? 'selected="selected"': "" ).'>'.$term->name.'</option>';
}
?>
</select>
</p>
<?php
}
}
?>
ACC SHELL 2018