Skip to content

Hämta & visa twitter på ditt WordPress-tema #2

by Jarsäter Joakim on april 7th, 2010
php

Om du kollat in min tidigare guide så kanske du märkte att man hela tiden såg användarnamnet på det twitterkonto vi valde att visa på våran sida. Man såg även om man hade taggat sin tweet med olika #taggar. Det tyckte inte jag var speciellt snyggt och ville självklart ha bort det.

Hur jag skulle lösa det var självklart, jag valde att använda mig av reguljära uttryck och en php-funktion som heter preg_replace().

$patterns = "/^(.{0,20}:) | (#\w{0,50})/m";

/* Och vid utskrift använder vi oss av funktionen */
echo preg_replace($patterns, '', $tweet->get_title();

/*
* Detta skulle göra att:
Jalet: RT Nu på måndag klockan tre (svensk tid) lanserar Adobe hela CS5 paketet. Registrera och se presentationen live: http://bit.ly/cLY6MD
Jalet: Planerar kök på IKEA. Fan vad kul !
Jalet: @JeppsonOne bra film! #film #test #hej
Jalet: Kollar AIK på Hovet! http://maps.google.com/?q=59.294589,18.082565
**
*Blir till
RT Nu på måndag klockan tre (svensk tid) lanserar Adobe hela CS5 paketet. Registrera och se presentationen live: http://bit.ly/cLY6MD
Planerar kök på IKEA. Fan vad kul !
@JeppsonOne bra film!
Kollar AIK på Hovet! http://maps.google.com/?q=59.294589,18.082565
*/

Såhär ser den fullständiga koden ut:

<?php
require_once(TEMPLATEPATH . "/inc/simplepie.inc");
$feed = new SimplePie();
$feed->set_feed_url("http://twitter.com/statuses/user_timeline/25161812.rss");
$feed->enable_cache(false);

$feed->init();
$feed->handle_content_type();
$numOfTweets = 4;
$tweets = array();
for($i = 0; $i < $feed->get_item_quantity($numOfTweets); $i++)
{
	$tweets[] = $feed->get_item($i);
}

$patterns = "/^(.{0,20}: )|(#.{0,} )/m";
?>
	<div id="jj-tweets">
		<h2>Senaste från Twitter!</h2>
		<?php foreach($tweets as $tweet): ?&
				<li class="jj-tweet">
					<a href="<?php echo $tweet->get_link(); ?>" title="<?php echo $tweet->get_title(); ?>"><?php echo preg_replace($patterns, '', ucfirst($tweet->get_title())); ?></a> <span><?php echo date("D j F Y", strtotime($tweet->get_date())); ?></span>
		<?php endforeach; ?>
	</div>

  • Detta är en fortsättning på en annan post du kan hitta här!

From → Guider, PHP, Tips & Trix

No comments yet

Leave a Reply

Note: XHTML is allowed. Your email address will never be published.

Subscribe to this comment feed via RSS