Grow your CSS skills. Land your dream job.

Last updated on:

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.

<?php
    include_once(ABSPATH . WPINC . '/feed.php');
    $rss = fetch_feed('http://twitter.com/favorites/793830.rss');
    $maxitems = $rss->get_item_quantity(3); 
    $rss_items = $rss->get_items(0, $maxitems);
?>

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

Comments

  1. Srigi
    Permalink to comment#

    Very ussefull, thanks for sharing.

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

  3. Permalink to comment#

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

  4. Permalink to comment#

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

    • 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…

    • 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. 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);
    ?>
    
    <ul>
    	<?php 
    	  if (empty($items)) 
    	    echo '<li>No items</li>';
    	  else
    	    foreach ( $items as $item ) : ?>
        	  <li>
        	    <a href='<?php echo $item['link']; ?>' title='<?php echo $item['title']; ?>'><?php echo $item['title']; ?> </a>
        	  </li>
    	    <?php endforeach; ?>
    </ul>
  6. Nice snippet. What about accessing private feeds with this… any way to authenticate the feed?

  7. 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. 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. Thanks for saving my time, works fine on my blog.

  10. Jon
    Permalink to comment#

    Doesn’t seem to work on Windows server.

  11. 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. kool…. definitely going to use this ish on my next project.

Leave a Comment

Posting Code

Markdown is supported in the comment area, so you can write inline code in backticks like `this` or multiline blocks of code in in triple backtick fences like ```this```. You don't need to escape code in backticks, Markdown does that for you.

Sadly, it's kind of broken. WordPress only accepts a subset of HTML in comments, which makes sense, because certainly some HTML can't be allowed, like <script> tags. But this stripping happens before the comment is processed by Markdown (via Jetpack). It seems to me that would be reversed, because after Markdown processes code in backticks, it's escaped, thus safe. If you think you can fix this issue, get in touch!

If you need to make sure the code (typically HTML) you post absolutely posts correctly, escape it and put it within <pre><code> tags.

Current ye@r *

*May or may not contain any actual "CSS" or "Tricks".