Retour à la liste des démonstrations

Intégration API Twitter 1.1

Exemple d'intégration du dernier tweet de @NOE_interactive

Cette démonstration se base sur le tutoriel Comment intégrer la nouvelle API twitter (1.1) en php de notre blog. Cela implique que vous ayez accomplis toutes les étapes du tutoriel jusqu'au point 2.3.1. Du coup cet exemple commence typiquement à partir du point 2.3.2 et vous montre comment procéder pour mettre en forme le dernier tweet d'un compte particulier.

$query="https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=NOE_interactive&count=1";
$content = $connection->get($query);

Ceci est l'url a envoyer à Twitter via $query afin de récupérer le dernier tweet de @NOE_interactive

Array ( [0] => stdClass Object ( [created_at] => Thu Apr 20 18:29:04 +0000 2017 [id] => 855126185000488964 [id_str] => 855126185000488964 [text] => Une belle surprise ce soir à @digitalmontagne avec cet award pour nos sites web #smart https://t.co/vWd8Q9pzbQ [truncated] => [entities] => stdClass Object ( [hashtags] => Array ( [0] => stdClass Object ( [text] => smart [indices] => Array ( [0] => 80 [1] => 86 ) ) ) [symbols] => Array ( etc ...

$connection retourne dans $content un tableau php.

<?php
//Tweet Markup
if(!empty($content)){ foreach($content as $tweet){
?>
<div class="twitter_status" id="<?php echo $tweet->id_str; ?>">
    <div class="bloc_content">
        <p class="status tw_status"><?php echo parseTweet($tweet->text); ?></p>
    </div>
    <div class="bloc_caption">
        <a href="http://twitter.com/<?php echo $tweet->user->screen_name; ?>">
            <img src="<?php echo $tweet->user->profile_image_url; ?>" alt="@<?php echo $tweet->user->name; ?>" class="userimg tw_userimg"/>
            <span class="username tw_username">@<?php echo $tweet->user->screen_name; ?></span>
        </a>
        <span class="timestamp tw_timestamp"><?php echo date("d M / H:i",strtotime($tweet->created_at)); ?></span>
    </div>
</div>
<?php }} ?>

<?php
/*
 * Transform Tweet plain text into clickable text
 */
function parseTweet($text) {
    $text = preg_replace('#http://[a-z0-9._/-]+#i', '<a  target="_blank" href="$0">$0</a>', $text); //Link
    $text = preg_replace('#@([a-z0-9_]+)#i', '@<a  target="_blank" href="http://twitter.com/$1">$1</a>', $text); //usernames
    $text = preg_replace('# \#([a-z0-9_-]+)#i', ' #<a target="_blank" href="http://search.twitter.com/search?q=%23$1">$1</a>', $text); //Hashtags
    $text = preg_replace('#https://[a-z0-9._/-]+#i', '<a  target="_blank" href="$0">$0</a>', $text); //Links
    return $text;
}
?>

On utilise le tableau php $content pour créer le code html de notre tweet

.twitter_status{
    background: white;
    padding: 20px;
    border: 1px solid #ddd;
    margin: 5px;
    float: left;
}
.userimg{
    float: left;
    margin-right: 10px;
    width: 24px;
    height: 24px;
}
.userimg img{
    width: 100%;
    height: auto;
}
.tw_timestamp{
    float: right;
}

On utilise un peu de css pour mettre en forme notre tweet.

Et voilà le dernier tweet de l'agence!