PATH:
home
/
letacommog
/
gdiags.fr
/
wp-content
/
plugins
/
essential-addons-for-elementor-lite
/
includes
/
Traits
<?php namespace Essential_Addons_Elementor\Traits; if (!defined('ABSPATH')) { exit; } // Exit if accessed directly trait Twitter_Feed { /** * Twitter Feed * * @since 3.0.6 */ public function twitter_feed_render_items($id, $settings, $class = '') { $token = get_option($id . '_' . $settings['eael_twitter_feed_ac_name'] . '_tf_token'); $cache_key = $id . '_' . $settings['eael_twitter_feed_ac_name'].$settings['eael_twitter_feed_data_cache_limit'] . '_tf_cache'; $items = get_transient( $cache_key ); $html = ''; if (empty($settings['eael_twitter_feed_consumer_key']) || empty($settings['eael_twitter_feed_consumer_secret'])) { return; } if ($items === false) { if (empty($token)) { $credentials = base64_encode($settings['eael_twitter_feed_consumer_key'] . ':' . $settings['eael_twitter_feed_consumer_secret']); add_filter('https_ssl_verify', '__return_false'); $response = wp_remote_post('https://api.twitter.com/oauth2/token', [ 'method' => '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; } } $args = array( 'httpversion' => '1.1', 'blocking' => true, 'headers' => array( 'Authorization' => "Bearer $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)) { $items = json_decode(wp_remote_retrieve_body($response), true); set_transient( $cache_key, $items, $settings['eael_twitter_feed_data_cache_limit'] * MINUTE_IN_SECONDS); } } if (empty($items)) { return; } 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']); foreach ($items as $item) { $delimeter = strlen($item['full_text']) > $settings['eael_twitter_feed_content_length'] ? '...' : ''; $html .= '<div class="eael-twitter-feed-item ' . $class . '"> <div class="eael-twitter-feed-item-inner"> <div class="eael-twitter-feed-item-header clearfix">'; if ($settings['eael_twitter_feed_show_avatar'] == 'true') { $html .= '<a class="eael-twitter-feed-item-avatar avatar-' . $settings['eael_twitter_feed_avatar_style'] . '" href="//twitter.com/' . $settings['eael_twitter_feed_ac_name'] . '" target="_blank"> <img src="' . $item['user']['profile_image_url_https'] . '"> </a>'; } $html .= '<a class="eael-twitter-feed-item-meta" href="//twitter.com/' . $settings['eael_twitter_feed_ac_name'] . '" target="_blank">'; if ($settings['eael_twitter_feed_show_icon'] == 'true') { $html .= '<i class="fab fa-twitter eael-twitter-feed-item-icon"></i>'; } $html .= '<span class="eael-twitter-feed-item-author">' . $item['user']['name'] . '</span> </a>'; if ($settings['eael_twitter_feed_show_date'] == 'true') { $html .= '<span class="eael-twitter-feed-item-date">' . sprintf(__('%s ago', 'essential-addons-for-elementor-lite'), human_time_diff(strtotime($item['created_at']))) . '</span>'; } $html .= '</div> <div class="eael-twitter-feed-item-content">'; $link_free_text = isset($item['entities']['urls'][0]['url'])?str_replace($item['entities']['urls'][0]['url'], '', $item['full_text']):$item['full_text']; $html .= '<p>' . substr( $link_free_text, 0, $settings['eael_twitter_feed_content_length']) . $delimeter . '</p>'; if ($settings['eael_twitter_feed_show_read_more'] == 'true') { $html .= '<a href="//twitter.com/' . $item['user']['screen_name'] . '/status/' . $item['id_str'] . '" target="_blank" class="read-more-link">Read More <i class="fas fa-angle-double-right"></i></a>'; } $html .= '</div> ' . (isset($item['extended_entities']['media'][0]) && $settings['eael_twitter_feed_media'] == 'true' ? ($item['extended_entities']['media'][0]['type'] == 'photo' ? '<img src="' . $item['extended_entities']['media'][0]['media_url_https'] . '">' : '') : '') . ' </div> </div>'; } return $html; } }
[+]
..
[-] Woo_Product_Comparable.php
[edit]
[-] Library.php
[edit]
[-] Facebook_Feed.php
[edit]
[-] Twitter_Feed.php
[edit]
[-] Controls.php
[edit]
[-] Elements.php
[edit]
[-] Enqueue.php
[edit]
[-] Core.php
[edit]
[-] Template_Query.php
[edit]
[-] Admin.php
[edit]
[-] Helper.php
[edit]
[-] Shared.php
[edit]
[-] Generator.php
[edit]
[-] Login_Registration.php
[edit]