WordPress hack : dernières activités Betaseries

Comme promis voici le code PHP permettant d’afficher vos dernières activités sur Betaseries.

Ca devrait pouvoir s’installer sur tout type de bloc où vous avez accès au code source, cependant il vous faut la version 5 de PHP.
Pour wordpress, il vous suffit d’éditer le fichier « sidebar.php » de votre thème actuel et de rajouter le code qui suit tout en haut de celui-ci.

<?php
function betaserie_type_action($string) {
	$explodedString = explode (" ", $string);
 
	if (in_array ("ajout&eacute;", $explodedString))	return "add";
	elseif (in_array ("regarder", $explodedString))	return "watch";
	else	return "archive";
}
 
function betaseries_parse_urls($string) {
	return preg_replace ("/\/planning\//", "http://betaseries.com/planning/", $string);
}
 
function betaseries_parse_feed() {
	$pseudo = "koskoz";
	$feed = "http://www.betaseries.com/rss/timeline/$pseudo";
 
	$dom = new DomDocument();
	$dom->load($feed);
	$titleList = $dom->getElementsByTagName("content");
 
	$imgUrl = get_bloginfo('template_url') . '/images/betaseries/';
 
	foreach ($titleList as $title) {
		echo '<p style="margin: 0 0 10px 0;">';
		echo '<img src="' . $imgUrl . betaserie_type_action ($title->nodeValue) . '.png">';
		echo betaseries_parse_urls ($title->nodeValue);
		echo '</p>';
	}
}
?>

Je compte bien entendu transformer ce hack en widget dans les jours à venir.

Pour l’utiliser, il suffit de modifier le pseudo dans la dernière fonction et de l’appeler tout bêtement :
<?php betaseries_parse_feed(); ?>

3 commentaires

  1. Lu,
    J’aimerais savoir quel plugin de coloration syntaxique tu utilises ?
    Merci :p

  2. Pour la coloration c’est « WP-Syntax », que j’utilise avec « Preserve Code Formatting » pour éviter que wordpress change des caractères.

    koskoz
  3. Ok merci :)
    Celui que j’utilise me plait moyennement je pense changer :)
    Bonne continuation pour ton blog.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *