Easytube + Jtabber + bidouille = Seesmic en sidebar sous WP

26 octobre, 2008

Comme Damien le seesmique, je l’ai aidé à implémenter sous Wordpress ce qu’il avait vu sous Typepad.

A savoir un player Seesmic inclus dans la colonne de son blog. Le challenge, générer un code <embed> de seesmic qui tienne dans 250px de large, qui puisse aussi se retrouver affiché dans le flux RSS du blog (pour bénéficier de l’attention des abonnés) mais dès lors être visible en taille normale à savoir 435 sur 355 pixels.

Pour réaliser ça j’ai repris et étendu les fonctionnalités d’un plugin WP que j’affectionne Easytube qui permet de poster une vidéo dans WP via son URL plutôt qu’en copiant collant son code embed.

Là-dessus un rien de jTabber, un plugins jQuery, qui permet d’afficher du contenu sous forme d’onglets dans WP et ailleurs.

Une catégorie dédiée à la publication des vidéos seesmic, un loop dédié à l’affichage des 3 derniers messages et un constante qui sert de flag pour définir si on est ou pas dans la colonne et le tour est joué.

Pour le détail du code

ID CATEGORY doit être remplacé par la valeur numérique de la catégorie utilisée pour poster vos vidéos

Le code ajouté dans sidebar.php dans le thème

<?php if(!in_category('ID CATEGORY')){
	//a call to include the tabber section
	//ID CATEGORY is "Question du jour"
	//SMALL is a contant used in easytube.php to determine if we are in the sidebar or not
		define("SMALL","true");
		get_template_file('jtabber.php');
	}
?>


Le jtabber.php du thème

<div id="jtabber">
<h2>La question du jour</h2>
	<div id="nav">
		<a href="#" title="divname1">Maintenant</a>
		<a href="#" title="divname2">Avant</a>
		<a href="#" title="divname3">Plus tôt</a>
		<div class="clear"></div>
	</div>
<?php $recent = new WP_Query("cat=ID CATEGORY&showposts=3");
	$my_i = 1;
	?>
	<?php if(have_posts()) : ?>
	<?php while($recent->have_posts()) : $recent->the_post();?>
 	<div id="divname<?php echo $my_i;?>" class="hiddencontent">
	<?php the_content(); $my_i++ ?>
 	</div>
<?php endwhile; ?>
<?php endif; ?>
</div><!--#jtabber end-->

Le code ajouté dans easytube.php (penser à ajouter les hooks aussi!)

/*
 * The Seesmic code
 */
function seesmic_content($content) {
    $regex = '/\[seesmic:http:\/\/seesmic.com\/video\/(.*?)]/i';
	preg_match_all( $regex, $content, $matches );
	$vid = $matches[1][0];
		if(is_feed()){
			$replace = "<a href=\"http://seesmic.com/video/$vid\">La pensée du jour</a>";
		} elseif(defined('SMALL')){
			$replace = '<span style="padding:0px; margin:0px; display:block">
			<object width="250" height="250">
			<param name="movie" value="http://seesmic.com/embeds/wrapper.swf"/>
			<param name="bgcolor" value="#F3F2F2"/>
			<param name="allowFullScreen" value="false"/>
			<param name="allowScriptAccess" value="always"/>
			<param name="flashVars" value="video='.$vid.'amp;version=threadedplayer"/>
			<embed src="http://seesmic.com/embeds/wrapper.swf" type="application/x-shockwave-flash" flashVars="video='.$vid.'&amp;version=threadedplayer" allowFullScreen="false" bgcolor="F3F2F2" allowScriptAccess="always" width="250" height="250">
			</embed>
			</object>
			</span>';
		}else {
			$replace = '<span style="padding:0px; margin:0px; display:block">
			<object width="435" height="355">
			<param name="movie" value="http://seesmic.com/embeds/wrapper.swf"/>
			<param name="bgcolor" value="#F3F2F2"/>
			<param name="allowFullScreen" value="false"/>
			<param name="allowScriptAccess" value="always"/>
			<param name="flashVars" value="video='.$vid.'amp;version=threadedplayer"/>
			<embed src="http://seesmic.com/embeds/wrapper.swf" type="application/x-shockwave-flash" flashVars="video='.$vid.'&amp;version=threadedplayer" allowFullScreen="false" bgcolor="F3F2F2" allowScriptAccess="always" width="435" height="355">
			</embed>
			</object>
			</span>';
		}

		$content = str_replace($matches[0][0], $replace, $content);
	return $content;
}


Un commentaire

  1. O_°
    Mateusz dit

    Le petit matin, un peu de codes, cela fait toujours du bien…

Laisser un commentaire



Dernières Notes

Récupérer ses données sur un disque

Comment récupérer les données d’un disque dur qui est toujours accessible mais présenté comme formaté RAW ?

Les succès du web belge selon Le Soir

Un top et flop du journal Le Soir sur les initiatives web en Belgique.
Et une “confirmation” qui fait plaisir au vu de mon investissement dans le projet Xpertize

La confirmation: http://xpertize.be/

Lancé il y a juste deux ans par une start-up belge, Xpertize a réussi, avec plus de 12 000 membres et plus de 1000 visites [...]

11 Best Ways to Improve WordPress Security

In this article, I'm going to show you some quick fixes that you can do to block the holes that may occur during or after WordPress installation.
11 Best Ways to Improve WordPress Security

Comment ajouter Facebook Connect à son blog en 8 minutes

Annoncée mercredi à Paris par Dave Morin, voici une vidéo de 8 minutes qui permet de voir comment intégrer Connect dans les commentaires de son blog.
Add Facebook Connect to Your Blog in 8 Minutes from Dave Morin on Vimeo.

Mix The Web

4 vidéos Youtube pour avoir une base visuelle, une vidéo comme bande son, un clic, un peu de patience et un email annonce le “mix” généré par le serveur de MixTheWeb.com.
Fun garanti (ACCESS CODE : shuS4fed)

2 jours à Paris

Retour sur des rencontres et d’agréables surprises.

Voir produire une bande-annonce de livre

Pas facile de parler objectivement de ce qui suit puisque l’instigatrice du projet qui retient mon attention est ma compagne. Vous voilà prévenus.
Valérie Nimal est une auteure belge dont le deuxième livre sera publié au printemps chez Luce Wilquin.
La genèse de ce livre c’est déjà une histoire en soi. D’abord oeuvre de commande de la [...]

Facebook Connect en plugin pour Wordpress

C’est donc la grande vague de la gestion des identités en ligne. Quel login sera le plus fort ?
Facebook ? Google ? Yahoo! le morribond ?
Ne reculant devant aucune expérimentation j’ai décidé d’installer le plugin développé par Sixjumps.
Il permet de s’identifier sur ce blog via ses données Facebook. En gros de l’OpenId mais [...]

Google Friend Connect

Depuis hier je peux faire usage de Google Friend Connect.
Il s’agit d’un ensemble d’outils communautaires mis à disposition par Google.
Pour l’instant rien de bien décoiffant (un mybloglog like et un wall/livre d’or très old fashion), mais si vous voulez rejoindre mon expérience de la chose je vous propose de rejoindre la communauté en vous identifiant [...]