function returnTweet() { $oauth_access_token = "4802840487-Vez1OhbjdjPQ5A0FWVmJNTNw8uzRFuccjabaL3b"; $oauth_access_token_secret = "H6X4hZmrsjUDqRV3QlXJgSnCI1z4NvM3TRX8CPzb7PU60"; $consumer_key = "Zde32xAZZD7qlUT94U0KabyHG"; $consumer_secret = "J85YV2lzFSOiF5aFi1QhDvNq3UtnQZo1cDi8wwQrWNWTiRaO4K"; $twitter_timeline = "user_timeline"; // create request $request = array('screen_name' => 'Weblib', 'count' => '4'); $oauth = array('oauth_consumer_key' => $consumer_key, 'oauth_token' => $oauth_access_token, 'oauth_nonce' => time(), 'oauth_timestamp' => time(), 'oauth_signature_method' => 'HMAC-SHA1', 'oauth_version' => '1.0'); // merge request and oauth to one array $oauth = array_merge($oauth, $request); // do some magic $base_info = buildBaseString("https://api.twitter.com/1.1/statuses/{$twitter_timeline}.json", 'GET', $oauth); $composite_key = rawurlencode($consumer_secret) . '&' . rawurlencode($oauth_access_token_secret); $oauth_signature = base64_encode(hash_hmac('sha1', $base_info, $composite_key, true)); $oauth['oauth_signature'] = $oauth_signature; // make request $header = array(buildAuthorizationHeader($oauth), 'Expect:'); $options = array(CURLOPT_HTTPHEADER => $header, CURLOPT_HEADER => false, CURLOPT_URL => "https://api.twitter.com/1.1/statuses/{$twitter_timeline}.json?" . http_build_query($request), CURLOPT_RETURNTRANSFER => true, CURLOPT_SSL_VERIFYPEER => false); $feed = curl_init(); curl_setopt_array($feed, $options); $json = curl_exec($feed); curl_close($feed); return parseTweets(json_decode($json, true)); }
function widget($args, $instance) { extract($args); // these are the widget options $title = apply_filters('widget_title', $instance['title']); $username = apply_filters('widget_username', $instance['username']); $count = apply_filters('widget_count', $instance['count']); $consumerKey = apply_filters('widget_consumerKey', $instance['consumerKey']); $consumerKeySecret = apply_filters('widget_consumerKeySecret', $instance['consumerKeySecret']); $accessToken = apply_filters('widget_accessToken', $instance['accessToken']); $accessTokenSecret = apply_filters('widget_accessTokenSecret', $instance['accessTokenSecret']); echo $args['before_widget']; if (!empty($instance['title'])) { echo $args['before_title']; echo apply_filters('widget_title', $instance['title'], $instance, $this->id_base); echo $args['after_title']; } require_once 'tweets.php'; $config = array(); $config['username'] = $username; $config['count'] = $count; $config['consumer_key'] = $consumerKey; //'djwVth5AYjwRkuR7NnOqg'; $config['consumer_key_secret'] = $consumerKeySecret; //'woYhNbIvPwf5Hyt2xi17H31uvxhu8oEacDE1jGE'; $config['access_token'] = $accessToken; //'1918993890-FIT26JDDlUfKjEYmuWwtKOn64t4RTaxIX2bRcMK'; $config['access_token_secret'] = $accessTokenSecret; //'PjqwpUwnORn9sPV8CtP3gdOa9B5yscxiffWr7rUx19Tll'; $result = oauthGetTweets($config); if (isset($result['errors'])) { $result = NULL; } else { $result = parseTweets($result); } echo '<ul>'; if ($result !== NULL) { if (count($result) > 0) { foreach ($result as $feed) { echo '<li><i class="fa fa-twitter"></i> ' . $feed['text'] . '<span class="date">' . $feed['timestamp'] . '</span></li>'; } } else { echo '<li>' . __("Loading ...", 'imic-framework-admin') . '</li>'; } } else { echo '<li>' . __("Loading ...", 'imic-framework-admin') . '</li>'; } echo '</ul>'; echo $args['after_widget']; }