'themeidol-flickr', 'description' => __('Displays a stream of photos from Flickr.', 'themeidol-all-widget')); parent::__construct('themeidol-flickr', __('Themeidol - Flickr Stream', 'themeidol-all-widget'), $args); // Register site styles and scripts add_action( 'wp_enqueue_scripts', array( $this, 'register_widget_styles' ) ); // Refreshing the widget's cached output with each new post add_action( 'save_post', array( $this, 'flush_widget_cache' ) ); add_action( 'deleted_post', array( $this, 'flush_widget_cache' ) ); add_action( 'delete_attachment', array( $this, 'flush_group_cache' ) ); add_action( 'switch_theme', array( $this, 'flush_widget_cache' ) ); } function widget($args, $instance){ $cache = (array) wp_cache_get( 'themeidol-flickr', 'widget' ); if(!is_array($cache)) $cache = array(); if(isset($cache[$args['widget_id']])){ echo $cache[$args['widget_id']]; return; } ob_start(); extract($args); $title = apply_filters('widget_title', esc_attr($instance['title'])); $user_id = esc_attr($instance['user_id']); $number = esc_attr($instance['number']); if(!is_numeric($number)) $number = 5; elseif($number < 1) $number = 1; elseif($number > 20) $number = 20; $flickr_query = 'display=latest&size=s&layout=x&source=user&user='.$user_id.'&count='.$number; if (strpos($before_widget, 'widget ') !== false) { $before_widget = preg_replace('/widget /', "idol-widget ", $before_widget, 1); } echo $before_widget; if($title != '') echo $before_title.$title.$after_title; ?>
'', 'user_id' => '')); if(!isset($instance['number']) || !$number = (int)$instance['number']) $number = 9; $title = esc_attr($instance['title']); $user_id = esc_attr($instance['user_id']); ?>