{"id":181,"date":"2014-12-20T16:33:07","date_gmt":"2014-12-20T16:33:07","guid":{"rendered":"https:\/\/www.kolkataonweb.com\/code-bank\/?p=181"},"modified":"2014-12-17T18:36:52","modified_gmt":"2014-12-17T18:36:52","slug":"twitter-feeds-widget","status":"publish","type":"post","link":"https:\/\/www.kolkataonweb.com\/code-bank\/php\/twitter-feeds-widget\/","title":{"rendered":"Twitter Feeds widget"},"content":{"rendered":"<pre class='wp-code-highlight prettyprint'>\/\/USAGE - set the keys and token here and then just include this file into your code. Change the &lt;li&gt; to whatever needed. \r\n\r\nif(!isset($tweetAuthen) &amp;&amp; $tweetAuthen != \"awre4rwrwfe\") \/\/random string to prevent this file being run directly\r\n{\r\n\u00a0\u00a0\u00a0 echo \"&lt;li&gt;Unauthorized use of widget&lt;\/li&gt;!\";\r\n}\r\nelse\r\n{\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/\/Files needed for the Twitter authentification\r\n\u00a0\u00a0\u00a0 \/\/Check if TwitterOAuth doesn't already existe\r\n\u00a0\u00a0\u00a0 if( ! class_exists( 'TwitterOAuth' )){\r\n\u00a0\u00a0 \u00a0\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0require_once 'twitteroauth\/twitteroauth.php';\r\n\u00a0\u00a0 \u00a0\r\n\u00a0\u00a0\u00a0 }\r\n\u00a0\u00a0 \u00a0\r\n\u00a0\u00a0 \u00a0\r\n\u00a0\u00a0 \u00a0\r\n\u00a0\u00a0 function twitter_feeds(){\r\n\r\n\u00a0\u00a0 \u00a0$return_value = false;\r\n\u00a0\u00a0 \u00a0\r\n\u00a0\u00a0\u00a0 $twitter_oauth_var = array('consumer_key'=&gt;\"YOUR CONSUMER KEY\", 'consumer_secret'=&gt;\"YOUR CONSUMER SECRET\", \"token_key\"=&gt;\"YOUR TOKEN KEY\", 'token_secret'=&gt;\"YOUR TOKEN SECRET\");\r\n\u00a0\u00a0 \u00a0\/\/Check if wee use the authentification methode. We need to have all the key and secret.\r\n\u00a0\u00a0 \u00a0if( is_array( $twitter_oauth_var ) &amp;&amp; count($twitter_oauth_var) == 4 ){\r\n\u00a0\u00a0\u00a0 \u00a0 \u00a0\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0$connection = new TwitterOAuth($twitter_oauth_var['consumer_key'], $twitter_oauth_var['consumer_secret'], $twitter_oauth_var['token_key'],$twitter_oauth_var['token_secret']);\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 $last_tweet = $connection-&gt;get('https:\/\/api.twitter.com\/1.1\/statuses\/user_timeline.json', array(\"count\"=&gt;\"5\") );  \/\/ change 5 to the number of tweets to retrieve\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0$return_value = $last_tweet;\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 foreach ($last_tweet as $tweet) \r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 {\r\n\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0$id = $tweet-&gt;id_str;\r\n\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\/\/$options['id'] = $id;\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\/\/$last_tweet_html = $connection-&gt;get('https:\/\/api.twitter.com\/1.1\/statuses\/oembed.json', $options);\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/\/$tweet_id = $id;\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0 \/\/$tweet_html .= $last_tweet_html-&gt;html;\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 $temp =\u00a0 $tweet-&gt;text;\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0if(strlen($tweet-&gt;entities-&gt;urls[0]-&gt;url))\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0{\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0$temp = str_ireplace($tweet-&gt;entities-&gt;urls[0]-&gt;url,\"&lt;a href='\".$tweet-&gt;entities-&gt;urls[0]-&gt;url.\"' target='_blank'&gt;\".$tweet-&gt;entities-&gt;urls[0]-&gt;url.\"&lt;\/a&gt;\",$temp);\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0$tweet_html .= \"&lt;li&gt;\".$temp.\"&lt;\/li&gt;\";\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0}\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0else\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0$tweet_html .= \"&lt;li&gt;\".$temp.\"&lt;\/li&gt;\";\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0}\r\n\r\n\u00a0\u00a0 \u00a0}\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0return $tweet_html;\r\n\u00a0\u00a0 \u00a0}\r\n\u00a0\u00a0 \u00a0\r\n\u00a0\u00a0 \u00a0echo twitter_feeds();\r\n}<\/pre>\n<p>Need to include twitteroauth library. Can be downloaded from here <a href=\"https:\/\/github.com\/abraham\/twitteroauth\">https:\/\/github.com\/abraham\/twitteroauth<\/a><\/p>\n<p>The whole code including the twitteroauth library can be downloaded from <a href=\"https:\/\/www.kolkataonweb.com\/code-bank\/wp-content\/uploads\/2014\/12\/twitter-feeds-api.zip\">here<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\/\/USAGE &#8211; set the keys and token here and then just include this file into your code. Change the &lt;li&gt; to whatever needed. if(!isset($tweetAuthen) &amp;&amp; $tweetAuthen != &#8220;awre4rwrwfe&#8221;) \/\/random string to prevent this file being run directly { \u00a0\u00a0\u00a0 echo &#8220;&lt;li&gt;Unauthorized use of widget&lt;\/li&gt;!&#8221;; } else { \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/\/Files needed for the Twitter authentification \u00a0\u00a0\u00a0&hellip; <a class=\"more-link\" href=\"https:\/\/www.kolkataonweb.com\/code-bank\/php\/twitter-feeds-widget\/\">Continue reading <span class=\"screen-reader-text\">Twitter Feeds widget<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-181","post","type-post","status-publish","format-standard","hentry","category-php","entry"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.kolkataonweb.com\/code-bank\/wp-json\/wp\/v2\/posts\/181","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.kolkataonweb.com\/code-bank\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.kolkataonweb.com\/code-bank\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.kolkataonweb.com\/code-bank\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kolkataonweb.com\/code-bank\/wp-json\/wp\/v2\/comments?post=181"}],"version-history":[{"count":9,"href":"https:\/\/www.kolkataonweb.com\/code-bank\/wp-json\/wp\/v2\/posts\/181\/revisions"}],"predecessor-version":[{"id":191,"href":"https:\/\/www.kolkataonweb.com\/code-bank\/wp-json\/wp\/v2\/posts\/181\/revisions\/191"}],"wp:attachment":[{"href":"https:\/\/www.kolkataonweb.com\/code-bank\/wp-json\/wp\/v2\/media?parent=181"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kolkataonweb.com\/code-bank\/wp-json\/wp\/v2\/categories?post=181"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kolkataonweb.com\/code-bank\/wp-json\/wp\/v2\/tags?post=181"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}