'POST', 'httpversion' => '1.1', 'blocking' => true, 'headers' => [ 'Authorization' => 'Basic ' . $credentials, 'Content-Type' => 'application/x-www-form-urlencoded;charset=UTF-8', ], 'body' => ['grant_type' => 'client_credentials'], ]); $body = json_decode(wp_remote_retrieve_body($response)); if ($body) { update_option($id . '_' . $settings['eael_twitter_feed_ac_name'] . '_tf_token', $body->access_token); $token = $body->access_token; } } add_filter('https_ssl_verify', '__return_false'); $response = wp_remote_get('https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=' . $settings['eael_twitter_feed_ac_name'] . '&count=999&tweet_mode=extended', [ 'httpversion' => '1.1', 'blocking' => true, 'headers' => [ 'Authorization' => "Bearer $token", ], ]); if ( is_wp_error( $response ) ) { return $html; } if ( ! empty( $response['response'] ) && $response['response']['code'] == 200 ) { $items = json_decode( wp_remote_retrieve_body( $response ), true ); set_transient( $cache_key, $items, $expiration ); } } if ( empty( $items ) ) { return $html; } if ($settings['eael_twitter_feed_hashtag_name']) { foreach ($items as $key => $item) { $match = false; if ($item['entities']['hashtags']) { foreach ($item['entities']['hashtags'] as $tag) { if (strcasecmp($tag['text'], $settings['eael_twitter_feed_hashtag_name']) == 0) { $match = true; } } } if ($match == false) { unset($items[$key]); } } } $items = array_splice($items, 0, $settings['eael_twitter_feed_post_limit']); $post_per_page = ! empty($settings['eael_twitter_feed_posts_per_page']) ? $settings['eael_twitter_feed_posts_per_page'] : 10; $counter = 0; $current_page = 1; self::$twitter_feed_fetched_count = count($items); foreach ($items as $item) { $counter++; if ($post_per_page > 0) { $current_page = ceil($counter / $post_per_page); } $is_reply = !empty($item['in_reply_to_status_id']) ? true : false; $show_reply = ( !empty($settings['eael_twitter_feed_show_replies']) && 'true' === $settings['eael_twitter_feed_show_replies'] ) ? true : false; if($is_reply && !$show_reply){ continue; } $delimeter = strlen($item['full_text']) > $settings['eael_twitter_feed_content_length'] ? '...' : ''; $media = isset( $item['extended_entities']['media'] ) ? $item['extended_entities']['media'] : ( isset( $item['retweeted_status']['entities']['media'] ) ? $item['retweeted_status']['entities']['media'] : ( isset( $item['quoted_status']['entities']['media'] ) ? $item['quoted_status']['entities']['media'] : [] ) ); $show_pagination = ! empty($settings['pagination']) && 'yes' === $settings['pagination'] ? true : false; if($show_pagination){ $pagination_class = ' page-' . $current_page; $pagination_class .= 1 === intval( $current_page ) ? ' eael-d-block' : ' eael-d-none'; } else { $pagination_class = 'page-1 eael-d-block'; } if ($counter == count($items)) { $pagination_class .= ' eael-last-twitter-feed-item'; } $html .= '
' . $content . '
'; if ($settings['eael_twitter_feed_show_read_more'] == 'true') { $read_more = !empty( $settings[ 'eael_twitter_feed_show_read_more_text' ] ) ? $settings[ 'eael_twitter_feed_show_read_more_text' ] : __( 'Read More', 'essential-addons-for-elementor-lite' ); $html .= ''.$read_more.' '; } $html .= '