',
$twitter_wrap_close = '',
$tweet_wrap_open = '
',
$date_format = 'g:i A M jS', // Date formatting. (http://php.net/manual/en/function.date.php)
$twitter_style_dates = true){ // Twitter style days. [about an hour ago] (Default : true)
// Twitter keys (You'lll need to visit https://dev.twitter.com and register to get these.
$consumerkey = "";
$consumersecret = "";
$accesstoken = "";
$accesstokensecret = "";
// Seconds to cache feed (Default : 1 minute).
$cachetime = 60*3;
// Time that the cache was last updtaed.
$cache_file_created = ((file_exists($cache_file))) ? filemtime($cache_file) : 0;
// A flag so we know if the feed was successfully parsed.
$tweet_found = false;
// Show cached version of tweets, if it's less than $cachetime.
if (time() - $cachetime < $cache_file_created) {
$tweet_found = true;
// Display tweets from the cache.
readfile($cache_file);
} else {
// Cache file not found, or old. Authenticae app.
$connection = getConnectionWithAccessToken($consumerkey, $consumersecret, $accesstoken, $accesstokensecret);
if($connection){
// Get the latest tweets from Twitter
$get_tweets = $connection->get("https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=".$twitter_user_id."&count=".$tweets_to_display."&include_rts=".$include_rts);
// Error check: Make sure there is at least one item.
if (count($get_tweets)) {
// Define tweet_count as zero
$tweet_count = 0;
// Start output buffering.
ob_start();
// Open the twitter wrapping element.
$twitter_html = $twitter_wrap_open;
// Iterate over tweets.
foreach($get_tweets as $tweet) {
// If we are not ignoring replies, or tweet is not a reply, process it.
if ($ignore_replies==false){
$tweet_found = true;
$tweet_count++;
$tweet_desc = $tweet->text;
// Add hyperlink html tags to any urls, twitter ids or hashtags in the tweet.
$tweet_desc = preg_replace('/(https?:\/\/[^\s"<>]+)/','
$1',$tweet_desc);
$tweet_desc = preg_replace('/(^|[\n\s])@([^\s"\t\n\r<: data-blogger-escaped-a="" data-blogger-escaped-href="http://twitter.com/$2" data-blogger-escaped-is="" data-blogger-escaped-target="_blank">@$2', $tweet_desc);
$tweet_desc = preg_replace('/(^|[\n\s])#([^\s"\t\n\r<: data-blogger-escaped-a="" data-blogger-escaped-href="http://twitter.com/search?q=%23$2" data-blogger-escaped-is="" data-blogger-escaped-target="_blank">#$2', $tweet_desc);
// Convert Tweet display time to a UNIX timestamp. Twitter timestamps are in UTC/GMT time.
$tweet_time = strtotime($tweet->created_at);
if ($twitter_style_dates){
// Current UNIX timestamp.
$current_time = time();
$time_diff = abs($current_time - $tweet_time);
switch ($time_diff)
{
case ($time_diff < 60):
$display_time = $time_diff.' seconds ago';
break;
case ($time_diff >= 60 && $time_diff < 3600):
$min = floor($time_diff/60);
$display_time = $min.' minutes ago';
break;
case ($time_diff >= 3600 && $time_diff < 86400):
$hour = floor($time_diff/3600);
$display_time = 'about '.$hour.' hour';
if ($hour > 1){ $display_time .= 's'; }
$display_time .= ' ago';
break;
default:
$display_time = date($date_format,$tweet_time);
break;
}
} else {
$display_time = date($date_format,$tweet_time);
}
// Render the tweet.
$twitter_html .= $tweet_wrap_open.html_entity_decode($tweet_desc).$meta_wrap_open.'
'.$display_time.''.$meta_wrap_close.$tweet_wrap_close;
}
// If we have processed enough tweets, stop.
if ($tweet_count >= $tweets_to_display){
break;
}
}
// Close the twitter wrapping element.
$twitter_html .= $twitter_wrap_close;
echo $twitter_html;
// Generate a new cache file.
$file = fopen($cache_file, 'w');
// Save the contents of output buffer to the file, and flush the buffer.
fwrite($file, ob_get_contents());
fclose($file);
ob_end_flush();
}
}
}
}
// Display latest tweets. (Modify username to your Twitter handle)
display_latest_tweets('');
?>
Post a Comment Blogger Facebook