'Twitter Feed' ); parent::__construct( false, esc_html__( 'Theme - Twitter', 'solarify' ), $widget_ops ); } /** * @param array $args * @param array $instance */ function widget( $args, $instance ) { extract( $args ); $user = esc_attr( $instance['user'] ); $title = esc_attr( $instance['title'] ); $number = ( (int) ( esc_attr( $instance['number'] ) ) > 0 ) ? esc_attr( $instance['number'] ) : 5; $title = $before_title . $title . $after_title; // $tweets = get_site_transient( 'scratch_tweets_' . $user . '_' . '2' ); $tweets = ''; if ( empty( $tweets ) ) { /* @var $connection TwitterOAuth */ $connection = fw_ext_social_twitter_get_connection(); $tweets = $connection->get( "https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=" . $user . "&count=" . $number ); set_site_transient( 'scratch_tweets_' . $user . '_' . $number, $tweets, 12 * HOUR_IN_SECONDS ); } $widget_tweets = array(); if ( empty( $tweets->errors ) ) { foreach ( $tweets as $key => $tweet ) : $widget_tweets[ $key ][ 'text' ] = make_clickable( $tweet->text ); $widget_tweets[ $key ][ 'created_at' ] = mysql2date( 'F j, Y g:i a', $tweet->created_at ); $widget_tweets[ $key ][ 'profile_image_url' ] = $tweet->user->profile_image_url; $widget_tweets[ $key ][ 'name' ] = $tweet->user->name; endforeach; $filepath = SOLARIFY_THEME_PATH . '/inc/widgets/twitter/views/widget.php'; if ( file_exists( $filepath ) ) { include( $filepath ); } else { esc_html_e( 'View not found', 'solarify' ); } } else { esc_html_e( 'Twitter in Social Extension not configured', 'solarify' ); } } //widget function update( $new_instance, $old_instance ) { return $new_instance; } function form( $instance ) { $instance = wp_parse_args( (array) $instance, array( 'user' => '', 'number' => '', 'title' => '' ) ); ?>