Tout savoir sur WordPress
Tutoriel WordPress

Afficher ses derniers tweets sans plugin

Cette astuce permet d’afficher les derniers tweets d’un compte sur n’importe quelle page de votre site WordPress.

Après vous avoir présenté les excellents plugins Juiz Last Tweet Widget et Twitter feed for WordPress, je propose une solution aux développeurs pour afficher les derniers tweets d’un compte sans plugin.

Copier le code ci-dessous à l’endroit où vous souhaitez afficher les tweets.

[pastacode lang=”php” message=”” highlight=”” provider=”manual”]


<?php
include_once(ABSPATH . WPINC . '/feed.php');
$rss = fetch_feed('https://api.twitter.com/1/statuses/user_timeline.rss?screen_name=GeekPressFR');
$maxitems = $rss->get_item_quantity(3);
$rss_items = $rss->get_items(0, $maxitems);
?>

<ul>
<?php if ($maxitems == 0) echo '<li>Aucun tweet.</li>';
else
// On affiche le titre et le lien de chacun des tweets
foreach ( $rss_items as $item ) : ?>
<li>
<a href="<?php echo $item->get_permalink(); ?>">
<?php echo $item->get_title(); ?>
</a>
</li>
<?php endforeach; ?>
</ul>

[/pastacode]

A noter que vous pouvez insérer ce bout de code n’importe quel endroit. Que ce soit dans une catégorie, dans un article ou une page, son emplacement est totalement libre.

NB: n’oubliez pas de modifier la valeur de “screen_name” par le nom de votre compte ;)

Source : WP Recipes

Cet article a été mis à jour il y a 4230 jours - Il n'est peut être plus à jour !

Article écrit par Jonathan B.

Jonathan est le co-fondateur de WP Media, startup connue pour être l’auteur de WP Rocket et Imagify. Il est aussi co-organisateur du WordCamp Lyon et Paris.

22 Commentaires

  1. Non ce n’est pas du code à mettre dans un widget !

    Pour des widgets il y a les deux plugins que j’ai cité plus haut. Juiz Last Tweet Widget est très bien pour afficher ces derniers tweets dans une sidebar grâce à un widget.

  2. Merci pour la petite mention et pour cette astuce.
    Je vais donner la même limite que sur WP Recipes.

    L’API Twitter à une limite dans le nombre d’appels par heure depuis un même serveur. On peut le voir avec “Live HTTP headers” le plugin de Firefox, par exemple.
    “X-RateLimit-Remaining: 147″
    La limite est de 150 par heure et peut vite être atteinte sur un serveur mutualisé.

    On peut aussi limiter le nombre de Tweets à la source directement :
    https://api.twitter.com/1/statuses/user_timeline.rss?screen_name=GeekPressFR&count=3

    Ou essayer avec cette URL également :
    http://search.twitter.com/search.rss?q=from%3AGeekPressFR&rpp=3

    Mon plugin, justement, joue avec les deux API.

    Bonne continuation ;)

  3. Merci pour le partage, par contre c’est vrai que sur un serveur mutualisé ça peut vite être atteint.
    Je vais mettre ça en place ce week end.
    En tous cas merci bien !

  4. Bonjour,alors voila il faut vraiment vraiment que vous m’aidez s’il vous plait ! j’ai chercher partout et pour moi aucune solution ! J’aimerai mettre les derniers tweet d’une personne sur QU’UNE seul page. Mais quand je met le widjet twitter ca se met automatiquement dans la page d’accueil,et je veut imperrativement l’enlever !
    Je précise que dans mon tableau de bord wordpresse il n’y a aucun boutton “Plugin” donc je n’est aucun solution !
    Merci d’avance…

  5. salut,
    L’astuce est sympa. En revanche c’est très basique comme approche >> normal pour un tuto. On pourrait affiner la chose par exemple en permettant d’ouvrir directement les liens contenus dans un tweet sans repasser par Twitter.

  6. @Julien : Elle est encore valable, mais on est d’accord que cela est temporaire (puisque c’est progressif).

    Dès que j’ai un peu de temps, je m’occupe de mettre à jour le code avec le format JSON.

    Merci pour l’info.

  7. Bonjour,
    Savez-vous comment afficher les derniers tweet en colonne , 1 tweet par colonne ?
    Merci d’avance

  8. @Paulice: Vous allez devoir faire cela en CSS. Par contre, je ne vais pouvoir vous en dire plus car ce n’est pas le sujet de cet article et ici on parle uniquement de WordPress ^^.