plugin-icon

Get Tweets in PHP

Par azanelli·
Get latest tweets from a Twitter account with a couple of lines of PHP, and do anything you want with them.
Note
5/5
Version
1.2
Installations actives
60
Mis à jour récemment
Dec 28, 2016
Get Tweets in PHP

This plugin will add the PHP class GetTweetsInPhp. You can use this class as described below for retrieving latest tweets from a Twitter account, then handle the tweets as you want in your PHP code.

Note: you should create a Twitter app before using this plugin. You can do it from here: http://apps.twitter.com.

Features

  • Get latest N tweets from a Twitter account.
  • Get the tweet’s text formatted as HTML (with links for each entities).
  • Cache support.
  • Made for developers.
  • Really light and simple.
  • Works with the v1.1 Twitter API.
  • Trivial install/uninstall (only add/remove the plugin’s files).
  • No any data will be permanently stored in your database (only transient data if the cache is enabled).
  • Proudly coded by Netgloo.

Example usage

Get and show latest tweets from @netglooweb:

// Set configurations $configs = [ // Set here tokens from your Twitter's app 'consumer_key' => 'CONSUMER_KEY', 'consumer_secret' => 'CONSUMER_SECRET', // The Twitter account name 'screen_name' => 'netglooweb', // The number of tweets 'count' => 5, ]; // Get latest tweets using the function get_tweets $tweets = \Netgloo\GetTweetsInPhp::get_tweets($configs); // ... // For each tweet show the HTML text and the attached image foreach ($tweets as $tweet) { echo "<p>"; echo $tweet->n_html_text; if ($tweet->n_has_media_photo) { echo "<img src='{$tweet->n_media_photo_url}' width='100%' />"; } echo "</p>"; } // ...

That’s all! Have fun!

Configurations

The get_tweets() function takes an array of configurations:

$configs = [ // --- Required --- // The tokens from your Twitter's app 'consumer_key' => '...', 'consumer_secret' => '...', // The Twitter account name 'screen_name' => '...', // --- Optional --- // The number of tweets 'count' => 20, // Include also the retweets 'include_rts' => true, // In the HTML text will be showed "Retweeted by ..." if the tweet // is a retweet 'show_retweeted_by' => true, // Enable the cache // It is recommended to activate the cache, when you put live // your website, in order to avoid to reach the Twitter's api rate // limit of 300 requests / 15-min. 'cache_enabled' => false, // Cache expiration (in seconds) // Increase the value to optimize the website's speed, decrease // the value if you want a more real-time behaviour (but not // less than 4 seconds to avoid to reach the rate limit). 'cache_expiration' => 60, // Templates // Retweeted by text template 'retweeted_by_template' => '<em> Retweeted by {{user_name}}</em>', // Hash tag link template 'hashtag_link_template' => '<a href="{{hashtag_link}}" rel="nofollow" target="_blank">' . '#{{hashtag_text}}</a>', // Url link template 'url_link_template' => '<a href="{{url_link}}" rel="nofollow" target="_blank" ' . 'title="{{url_title}}">{{url_text}}</a>', // User mention link template 'user_mention_link_template' => '<a href="{{user_mention_link}}" rel="nofollow" target="_blank" ' . 'title="{{user_mention_title}}">@{{user_mention_text}}</a>', // Media link template 'media_link_template' => '<a href="{{media_link}}" rel="nofollow" target="_blank" ' . 'title="{{media_title}}">{{media_text}}</a>' ]; $tweets = \Netgloo\GetTweetsInPhp::get_tweets($configs);

Returned values

The get_tweets() function will return an Array of tweets. On each tweet object are available these properties:

  • n_html_text (String) The tweet text formatted as HTML, with links on each entities.
  • n_is_retweeted (Boolean) True if the curret tweet is a retweet.
  • n_has_media_photo (Boolean) True if the current tweet has an attached photo.
  • n_media_photo_url (String) The url of the tweet’s attached photo.
  • n_media_photo_urls (Array) If the tweet has more than one attached photos this properties contains all the urls.

Other available properties are those returned from the user_timeline Twitter’s API. These are some useful ones:

  • created_at
  • retweet_count
  • user->name
  • user->screen_name
  • user->profile_image_url

If the properties n_is_retweeted is true the current tweet is a « re-tweet » and the retweeted_status object is available:

  • retweeted_status->user->name
  • retweeted_status->user->screen_name
  • retweeted_status->retweet_count

Example

This code use some of the above properties:

// ... $tweets = \Netgloo\GetTweetsInPhp::get_tweets($configs); foreach ($tweets as $tweet) { echo $tweet->created_at . "<br/>"; echo $tweet->n_html_text . "<br/>"; if ($tweet->n_has_media_photo) { echo $tweet->n_media_photo_url . "<br/>"; } } // ...

Limitations

Since we rely on the Twitter’s user_timeline API, you should read the following docs for taking in account any API’s limitation:

  • https://dev.twitter.com/rest/reference/get/statuses/user_timeline
  • https://dev.twitter.com/rest/public/timelines

Contributing

For patches, bug reports, suggestions, requests for features there is a Git repository on GitHub here: https://github.com/netgloo/get-tweets-in-php

Gratuitsur le plan Business
En procédant à l’installation, vous acceptez les Conditions d’utilisation de WordPress.com ainsi que les Conditions de l’extension tierce.
Testé jusqu’à version
WordPress 4.7.31
Cette extension est disponible en téléchargement pour votre site .