Show Your Favorite Tweets with WordPress

Just replace the URL in the fetch_rss line below with the RSS feed to your Twitter favorites. In fact this will work with any RSS feed.

    include_once(ABSPATH . WPINC . '/feed.php');
    $rss = fetch_feed('');
    $maxitems = $rss->get_item_quantity(3); 
    $rss_items = $rss->get_items(0, $maxitems);

    <?php if ($maxitems == 0) echo '<li>No items.</li>';
    // Loop through each feed item and display each item as a hyperlink.
    foreach ( $rss_items as $item ) : ?>
        <a href='<?php echo $item->get_permalink(); ?>'>
            <?php echo $item->get_title(); ?>
    <?php endforeach; ?>


  1. User Avatar
    Permalink to comment#

    Very ussefull, thanks for sharing.

  2. User Avatar
    Nithin Bekal
    Permalink to comment#

    I used something similar for a theme recently, but it involved a lot more code. This will be useful.

  3. User Avatar
    Permalink to comment#

    How about comment for each favorite? What do you think?

  4. User Avatar
    Joe G.
    Permalink to comment#

    what about making a tweet a post? is this something that can be achieved with this code?

    • User Avatar
      Chris Radford

      Nope, this code will pull the tweet into the WordPress theme, not the database, you’d need to find a plugin or do that manually.

      Liking the shortness of the code, used something similar recently, was just a lot longer…

    • User Avatar
      Matt Royce
      Permalink to comment#

      I know this is well over a year old, but couldn’t you just setup a super long RSS feed with AJAX auto-reload when you scroll to the bottom of the page, and list all of your tweets on there?

  5. User Avatar
    Cipha Sublime
    Permalink to comment#

    I added a custom field option to this snippet. Will allow users to specify custom rss from facebook, twitter or where ever.

    <?php // Get RSS Feed(s)
    	include_once(ABSPATH . WPINC . '/rss.php');
    	$feeds =  get_post_meta($post->ID, 'feeds',true);
    	$rss = fetch_rss($feeds);
    	$maxitems = 5;
    	$items = array_slice($rss->items,0,$maxitems);
    	  if (empty($items)) 
    	    echo '<li>No items</li>';
    	    foreach ( $items as $item ) : ?>
        	    <a href='<?php echo $item['link']; ?>' title='<?php echo $item['title']; ?>'><?php echo $item['title']; ?> </a>
    	    <?php endforeach; ?>
  6. User Avatar
    Robert Merrill
    Permalink to comment#

    Nice snippet. What about accessing private feeds with this… any way to authenticate the feed?

  7. User Avatar
    Permalink to comment#

    Thank you, I have recently been seeking for details about this subject matter for ages and yours is the best I’ve discovered so far.

  8. User Avatar
    Nick Hauselman
    Permalink to comment#

    I’ve been having trouble implementing this to a post. Can you suggest a plugin that will allow PHP on a post that works well with this?
    I’ve been struggling with Allow PHP in Posts and Pages and I’m getting all kinds of errors. THANKS.

  9. User Avatar
    Bharat Chowdary

    Thanks for saving my time, works fine on my blog.

  10. User Avatar
    Permalink to comment#

    Doesn’t seem to work on Windows server.

  11. User Avatar
    Permalink to comment#

    I tried this…i get error as “Too many redirects”
    I cant login to my blog untill i deleted the plugin manually.

    Am i doing something wrong?

  12. User Avatar
    Fidelis Agi
    Permalink to comment#

    kool…. definitely going to use this ish on my next project.

Leave a Comment

Posting Code!

You may write comments in Markdown. This makes code easy to post, as you can write inline code like `<div>this</div>` or multiline blocks of code in triple backtick fences (```) with double new lines before and after.

Code of Conduct

Absolutely anyone is welcome to submit a comment here. But not all comments will be posted. Think of it like writing a letter to the editor. All submitted comments will be read, but not all published. Published comments will be on-topic, helpful, and further the discussion or debate.

Want to tell us something privately?

Feel free to use our contact form. That's a great place to let us know about typos or anything off-topic.