'widget_twitter', 'description' => 'A widget to display latest entries from twitter', 'customize_selective_refresh' => true ); parent::__construct( 'widget_twitter', THEMENAME.' Twitter Widget', $options ); require_once( 'class-wp-twitter-api.php' ); } function widget($atts, $instance){ extract($atts, EXTR_SKIP); echo wp_kses_post( $before_widget ); $title = empty($instance['title']) ? '' : apply_filters('widget_title', $instance['title']); $count = empty($instance['count']) ? '' : $instance['count']; $username = empty($instance['username']) ? '' : $instance['username']; $twitter_consumer_key = empty($instance['twitter_consumer_key']) ? '' : $instance['twitter_consumer_key']; $twitter_consumer_secret = empty($instance['twitter_consumer_secret']) ? '' : $instance['twitter_consumer_secret']; $time = empty($instance['time']) ? 'no' : $instance['time']; $display_image = empty($instance['display_image']) ? 'no' : $instance['display_image']; $used_for = 'sidebar'; if ( !empty( $title ) && $used_for == 'sidebar' ) { echo wp_kses_post( $before_title . $title . $after_title ); } echo get_twitter_entries($count, $username, $widget_id, $time, $display_image, $used_for, $twitter_consumer_key, $twitter_consumer_secret ); echo wp_kses_post( $after_widget ); } function update($new_instance, $old_instance) { $instance = $old_instance; foreach($new_instance as $key=>$value) { $instance[$key] = strip_tags($new_instance[$key]); } delete_transient(THEMENAME.'_tweetcache_id_'.$instance['username'].'_'.$this->id_base."-".$this->number); return $instance; } function form($instance){ global $cl_redata; $instance = wp_parse_args( (array) $instance, array( 'title' => 'Latest Tweets', 'count' => '3' ) ); $title = isset($instance['title']) ? strip_tags($instance['title']): ""; $count = isset($instance['count']) ? strip_tags($instance['count']): ""; $username = isset($instance['username']) ? strip_tags($instance['username']): ""; $time = isset($instance['time']) ? strip_tags($instance['time']): ""; $display_image = isset($instance['display_image']) ? strip_tags($instance['display_image']): ""; $twitter_consumer_key = isset($instance['twitter_consumer_key']) ? strip_tags($instance['twitter_consumer_key']): ""; $twitter_consumer_secret = isset($instance['twitter_consumer_secret']) ? strip_tags($instance['twitter_consumer_secret']): ""; ?>
"; echo codeless_complex_esc( $elements ); ?>
"; echo codeless_complex_esc( $elements ); ?>
"; echo codeless_complex_esc( $elements ); ?>
$twitter_consumer_key, 'consumer_secret' => $twitter_consumer_secret ); // Let's instantiate Wp_Twitter_Api with your credentials $twitter_api = new Wp_Twitter_Api( $credentials ); // Example a - Retrieve last 5 tweets from my timeline (default type statuses/user_timeline) $query = 'count=5&include_entities=true&include_rts=true&screen_name='.$username; $response = $twitter_api->query( $query ); if (!is_wp_error($response)) { $tweets = array(); if(!empty($response)){ foreach ($response as $tweet) { if($iterations == $count) break; $text = (string) $tweet->text; if($text[0] != "@") { $iterations++; $tweets[] = array( 'text' => filter( $text ), 'created' => strtotime( $tweet->created_at ), 'user' => array( 'name' => (string)$tweet->user->name, 'screen_name' => (string)$tweet->user->screen_name, 'image' => (string)$tweet->user->profile_image_url, 'utc_offset' => (int) $tweet->user->utc_offset[0], 'follower' => (int) $tweet->user->followers_count)); } } set_transient(THEMENAME.'_tweetcache_id_'.$username.'_'.$widget_id, 'true', 60*30); update_option(THEMENAME.'_tweetcache_'.$username.'_'.$widget_id, $tweets); } } } if(!isset($tweets[0])) { $tweets = get_option(THEMENAME.'_tweetcache_'.$username.'_'.$widget_id); } if(isset($tweets[0])) { $time_format = get_option('date_format')." - ".get_option('time_format'); if($used_for == 'sidebar'){ foreach ($tweets as $message) { $ex_cl = ''; if($avatar == 'yes') $ex_cl = 'with_avatar'; $output .='No public Tweets found
'; } return $filtered_message; } function filter($text) { $text = preg_replace('/\b([a-zA-Z]+:\/\/[\w_.\-]+\.[a-zA-Z]{2,6}[\/\w\-~.?=&%#+$*!]*)\b/i',"$1", $text); $text = preg_replace('/\b(?$1", $text); $text = preg_replace("/\b([a-zA-Z][a-zA-Z0-9\_\.\-]*[a-zA-Z]*\@[a-zA-Z][a-zA-Z0-9\_\.\-]*[a-zA-Z]{2,6})\b/i","$1", $text); $text = preg_replace("/#(\w+)/", "#\\1", $text); $text = preg_replace("/@(\w+)/", "@\\1", $text); return $text; }