<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Émile Girard : gérant d&#039;estrade &#187; Développement</title>
	<atom:link href="http://www.estrade.ca/dev/feed" rel="self" type="application/rss+xml" />
	<link>http://www.estrade.ca</link>
	<description>Penser tout connaître c&#039;est déjà un début</description>
	<lastBuildDate>Mon, 19 Dec 2011 15:22:24 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>php.ini : forcer des options spécifiques pour chaque site</title>
		<link>http://www.estrade.ca/dev/php-ini-forcer-des-options-specifiques-pour-chaque-site.html</link>
		<comments>http://www.estrade.ca/dev/php-ini-forcer-des-options-specifiques-pour-chaque-site.html#comments</comments>
		<pubDate>Fri, 27 May 2011 16:14:49 +0000</pubDate>
		<dc:creator>Emile Girard</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[fichiers]]></category>
		<category><![CDATA[poids]]></category>
		<category><![CDATA[taille]]></category>

		<guid isPermaLink="false">http://www.estrade.ca/?p=1303</guid>
		<description><![CDATA[Petit truc très utile si jamais vous disposiez d&#8217;un serveur mutualisé hébergeant plusieurs sites et que vous souhaitiez &#8211; par exemple &#8211; augmenter le POST_MAX_SIZE pour un de vos clients afin de lui permettre de téléverser des photos de haute qualité via l&#8217;admin de WordPress. &#8211; À la racine de votre dossier public, ajoutez un [...]]]></description>
			<content:encoded><![CDATA[<p>Petit truc très utile si jamais vous disposiez d&#8217;un serveur mutualisé hébergeant plusieurs sites et que vous souhaitiez &#8211; par exemple &#8211; augmenter le POST_MAX_SIZE pour un de vos clients afin de lui permettre de téléverser des photos de haute qualité via l&#8217;admin de WordPress.</p>
<p>&#8211;</p>
<p>À la racine de votre dossier public, ajoutez un<em> .htaccess </em>contenant :</p>
<pre style="padding-left: 30px;">suPHP_ConfigPath /home/public_html/</pre>
<p>et au même endroit, un fichier nommé <em>php.ini</em> contenant les configs à surpasser (<em>override</em>), par exemple:</p>
<pre style="padding-left: 30px;">upload_max_filesize=10M
post_max_size=10M
max_execution_time=200
max_input_time=200</pre>
<p>&#8211;</p>
<p><strong>MÀJ : </strong>Merci au collègue <a href="http://www.erichogue.ca/">Éric</a> qui me souligne au passage la nécessité d&#8217;avoir installé le <a href="http://www.suphp.org/Documentation.html">module suPHP</a> pour que cette astuce fonctionne.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.estrade.ca/dev/php-ini-forcer-des-options-specifiques-pour-chaque-site.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Corriger les apostrophes dans WordPress</title>
		<link>http://www.estrade.ca/dev/corriger-les-apostrophes-dans-wordpress.html</link>
		<comments>http://www.estrade.ca/dev/corriger-les-apostrophes-dans-wordpress.html#comments</comments>
		<pubDate>Fri, 25 Mar 2011 16:13:27 +0000</pubDate>
		<dc:creator>Emile Girard</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.estrade.ca/?p=1295</guid>
		<description><![CDATA[Vous le savez sûrement, WordPress s&#8217;amuse souvent à modifier certains caractères de vos textes par des entités html/unicode ou même d&#8217;autres caractères qu&#8217;ils juge équivalents. C&#8217;est pire encore si vous êtes un adepte du copier/coller pour remplir le formulaire de publication. C&#8217;est surtout vrai pour les apostrophes&#8230; Pour régler ça une fois pour toutes il [...]]]></description>
			<content:encoded><![CDATA[<p>Vous le savez sûrement, WordPress s&#8217;amuse souvent à modifier certains caractères de vos textes par des entités html/unicode ou même d&#8217;autres caractères qu&#8217;ils juge équivalents. C&#8217;est pire encore si vous êtes un adepte du copier/coller pour remplir le formulaire de publication.</p>
<p>C&#8217;est surtout vrai pour les apostrophes&#8230;</p>
<p>Pour régler ça une fois pour toutes il vous suffit d&#8217;ajouter ces quelques lignes au fichier <em>functions.php</em> de votre thème :</p>
<pre class="php"><span class="phpComment">// IMPORTANT <span class="phpOperator">:</span> j<span class="phpString">'ai dû '</span>casser<span class="phpString">' les entités avec un espace pour qu'</span>elles s<span class="phpString">'affichent correctement
</span><span class="phpComment">// n'</span>oubliez donc pas de les enlever pour que le script fonctionne <span class="phpOperator">(</span>ex<span class="phpOperator">:</span> &#038;amp<span class="phpText">;</span> #2019 devient &#038;amp<span class="phpText">;</span>#2019<span class="phpOperator">)</span>
</span>
<span class="phpFunctionKeyword">function</span> cleanApostrophes<span class="phpOperator">(</span>$content<span class="phpOperator">)</span>
<span class="phpOperator">{</span>
	$content <span class="phpOperator">=</span> <span class="phpFunction">str_replace</span><span class="phpOperator">(</span><span class="phpFunction">array</span><span class="phpOperator">(</span><span class="phpString">"<span class="phpString">'","`","’", "&amp; 146;", "&amp; #2019;", "&amp; #8217;", "&amp; apos;", "&amp; amp;apos;","&amp; #039;"), "'</span>"</span>, $content<span class="phpOperator">)</span><span class="phpText">;</span>
<span class="phpKeyword">	return </span>$content;
<span class="phpOperator">}</span>
add_filter<span class="phpOperator">(</span><span class="phpString">'the_title'</span>, <span class="phpString">'cleanApostrophes'</span><span class="phpOperator">)</span><span class="phpText">;</span>
add_filter<span class="phpOperator">(</span><span class="phpString">'the_content'</span>, <span class="phpString">'cleanApostrophes'</span><span class="phpOperator">)</span><span class="phpText">;</span>
add_filter<span class="phpOperator">(</span><span class="phpString">'the_excerpt'</span>, <span class="phpString">'cleanApostrophes'</span><span class="phpOperator">)</span><span class="phpText">;</span></pre>
<p>Avec ça, <em>ciao bye</em> pour les apostrophes étranges et les conversions douteuses dans les titres (the_title), le contenu (the_content) et les résumés (the_excerpt). </p>
<p>Évidemment vous pouvez modifier la fonction à votre gré pour ajouter d&#8217;autres règles de remplacement&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.estrade.ca/dev/corriger-les-apostrophes-dans-wordpress.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>HTML5 &#8211; Gabarit de test/demo</title>
		<link>http://www.estrade.ca/dev/html5-gabarit-test-demo.html</link>
		<comments>http://www.estrade.ca/dev/html5-gabarit-test-demo.html#comments</comments>
		<pubDate>Fri, 11 Mar 2011 16:26:29 +0000</pubDate>
		<dc:creator>Emile Girard</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[HTML5]]></category>

		<guid isPermaLink="false">http://www.estrade.ca/?p=1293</guid>
		<description><![CDATA[Je suis tombé sur ça ce matin. http://fr.html5boilerplate.com/ Vraiment intéressant comme base d&#8217;expérimentation pour HTML5. Vivement des temps libres pour que je puisse m&#8217;amuser avec ça un peu&#8230; &#8211; AJOUT : Y a aussi le pendant mobile de ce truc. http://html5boilerplate.com/mobile/ Vraiment incroyable!]]></description>
			<content:encoded><![CDATA[<p>Je suis tombé sur ça ce matin.</p>
<p><a href="http://fr.html5boilerplate.com/">http://fr.html5boilerplate.com/</a></p>
<p>Vraiment intéressant comme base d&#8217;expérimentation pour HTML5.</p>
<p>Vivement des temps libres pour que je puisse m&#8217;amuser avec ça un peu&#8230;</p>
<p>&#8211;</p>
<p>AJOUT :</p>
<p>Y a aussi le pendant mobile de ce truc.</p>
<p><a href="http://html5boilerplate.com/mobile/#">http://html5boilerplate.com/mobile/</a></p>
<p>Vraiment incroyable!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.estrade.ca/dev/html5-gabarit-test-demo.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress : Afficher une entrée sur plusieurs colonnes</title>
		<link>http://www.estrade.ca/dev/wordpress-entree-plusieurs-colonnes.html</link>
		<comments>http://www.estrade.ca/dev/wordpress-entree-plusieurs-colonnes.html#comments</comments>
		<pubDate>Wed, 05 Jan 2011 01:12:24 +0000</pubDate>
		<dc:creator>Emile Girard</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.estrade.ca/?p=1283</guid>
		<description><![CDATA[Voici un petit bout de code très utile que j&#8217;ai développé afin de permettre très simplement de gérer des billets s&#8217;affichant sur plusieurs colonnes via l&#8217;interface de WordPress. Pour ce faire, j&#8217;ai choisi d&#8217;utiliser à mon avantage le séparateur d&#8217;introduction, à savoir la balise &#60;!&#8211;more&#8211;&#62; qui s&#8217;insère facilement en cliquant sur le bouton de l&#8217;éditeur. [...]]]></description>
			<content:encoded><![CDATA[<p>Voici un petit bout de code très utile que j&#8217;ai développé afin de permettre très simplement de gérer des billets s&#8217;affichant sur plusieurs colonnes via l&#8217;interface de WordPress.</p>
<p>Pour ce faire, j&#8217;ai choisi d&#8217;utiliser à mon avantage le séparateur d&#8217;introduction, à savoir la balise &lt;!&#8211;more&#8211;&gt; qui s&#8217;insère facilement en cliquant sur le bouton <img class="alignnone" title="More" src="http://www.estrade.ca/wp-includes/js/tinymce/plugins/wordpress/img/more.gif" alt="" width="20" height="20" /> de l&#8217;éditeur.</p>
<p>Ainsi, le script suivant permet de détourner son utilisation pour enrober chaque élément de contenu séparé par &lt;!&#8211;more&#8211;&gt; d&#8217;un DIV permettant ultimement d&#8217;afficher le tout sur plusieurs colonnes.</p>
<p><span id="more-1283"></span></p>
<p>Il vous suffit donc de coller ce script dans le fichier <em>functions.php</em> de votre thème :</p>
<pre class="php"><span class="phpFunctionKeyword">function</span> moreToCols<span class="phpOperator">(</span>$content<span class="phpOperator">)</span>
<span class="phpOperator">{</span>
	$cols <span class="phpOperator">=</span> <span class="phpFunction">array</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span>
	<span class="phpComment"><span class="phpComment">//remplacer le span de remplacement par <span class="phpOperator">&lt;</span><span class="phpOperator">!</span>--more--</span><span class="phpOperator">&gt;</span>
</span>	$content <span class="phpOperator">=</span> <span class="phpFunction">eregi_replace</span><span class="phpOperator">(</span><span class="phpString">'<span class="phpOperator">&lt;</span>span id<span class="phpOperator">=</span><span class="phpString">"more-<span class="phpOperator">[</span><span class="phpNumber">0</span>-9<span class="phpOperator">]</span><span class="phpOperator">+</span>"</span><span class="phpOperator">&gt;</span><span class="phpOperator">&lt;</span>/span<span class="phpOperator">&gt;</span>'</span>, <span class="phpString">'<span class="phpOperator">&lt;</span><span class="phpOperator">!</span>--more-<span class="phpOperator">-<span class="phpOperator">&gt;</span></span>'</span>, $content<span class="phpOperator">)</span><span class="phpText">;</span>
	<span class="phpComment"><span class="phpComment">//trouver les <span class="phpOperator">&lt;</span><span class="phpOperator">!</span>--more--</span><span class="phpOperator">&gt;</span> et séparer le texte
</span>	<span class="phpFunction">preg_match</span><span class="phpOperator">(</span><span class="phpString">'/<span class="phpOperator">&lt;</span><span class="phpOperator">!</span>--more<span class="phpOperator">(</span>.*<span class="phpOperator">?</span><span class="phpOperator">)</span><span class="phpOperator">?</span>-<span class="phpOperator">-<span class="phpOperator">&gt;</span></span>/'</span>, $content, $matches<span class="phpOperator">)</span><span class="phpText">;</span>
<span class="phpKeyword">	if<span class="phpOperator">(</span></span><span class="phpFunction">sizeof</span><span class="phpOperator">(</span>$matches<span class="phpOperator">)</span><span class="phpOperator"><span class="phpOperator">=</span>=</span><span class="phpNumber">0</span><span class="phpOperator">)</span><span class="phpKeyword"> return </span>$content;
	$sections <span class="phpOperator">=</span> <span class="phpFunction">explode</span><span class="phpOperator">(</span>$matches<span class="phpOperator">[</span><span class="phpNumber">0</span><span class="phpOperator">]</span>, $content<span class="phpOperator">)</span><span class="phpText">;</span>
	<span class="phpComment">//colonnes
</span>	$colClass <span class="phpOperator">=</span> <span class="phpFunction">array</span><span class="phpOperator">(</span><span class="phpString">''</span>, <span class="phpString">'unique'</span>,<span class="phpString">'half'</span>,<span class="phpString">'third'</span>,<span class="phpString">'fourth'</span>,<span class="phpString">'fifth'</span>,<span class="phpString">'sixth'</span>,<span class="phpString">'seventh'</span><span class="phpOperator">)</span><span class="phpText">;</span>
	$nbCols <span class="phpOperator">=</span> <span class="phpFunction">sizeof</span><span class="phpOperator">(</span>$sections<span class="phpOperator">)</span><span class="phpText">;</span>
	<span class="phpComment">//remove filter wpautop <span class="phpOperator">(</span>wp-includes/formatting<span class="phpOperator">.</span>php<span class="phpOperator">:</span>181<span class="phpOperator">)</span>
</span>	remove_filter<span class="phpOperator">(</span><span class="phpString">'the_content'</span>, <span class="phpString">'wpautop'</span><span class="phpOperator">)</span><span class="phpText">;</span>
	<span class="phpComment">//output
</span>	$html <span class="phpOperator">=</span> <span class="phpString">''</span><span class="phpText">;</span>
<span class="phpKeyword">	for<span class="phpOperator">(</span></span>$i<span class="phpOperator">=</span>0; $i<span class="phpOperator">&lt;</span>$nbCols<span class="phpText">;</span> $i<span class="phpOperator"><span class="phpOperator">+</span><span class="phpOperator">+</span></span><span class="phpOperator">)</span> <span class="phpOperator">{</span>
		$last <span class="phpOperator">=</span> <span class="phpOperator">(</span>$i <span class="phpOperator"><span class="phpOperator">=</span>=</span> <span class="phpOperator">(</span>$nbCols - <span class="phpNumber">1</span><span class="phpOperator">)</span><span class="phpOperator">)</span> <span class="phpOperator">?</span> <span class="phpString">'last'</span> <span class="phpOperator">:</span> <span class="phpString">''</span><span class="phpText">;</span>
		$html <span class="phpOperator">.=</span> <span class="phpString">'<span class="phpOperator">&lt;</span><span class="phpOperator">!</span>-- colonne #'</span>.<span class="phpOperator">(</span>$i<span class="phpOperator">+</span><span class="phpNumber">1</span><span class="phpOperator">)</span>.<span class="phpString">'/'</span>.$nbCols<span class="phpOperator">.</span><span class="phpString">' -<span class="phpOperator">-<span class="phpOperator">&gt;</span></span>'</span><span class="phpText">;</span>
		$html <span class="phpOperator">.=</span> <span class="phpString">'<span class="phpOperator">&lt;</span>div class=<span class="phpString">"one_'</span> <span class="phpOperator">.</span> $colClass<span class="phpOperator">[</span>$nbCols<span class="phpOperator">]</span>.<span class="phpString">' '</span>.$last.<span class="phpString">'"</span><span class="phpOperator">&gt;</span>'</span><span class="phpText">;</span>
		<span class="phpComment">//appliquer le filter <span class="phpString">'wpautop'</span> colonne par colonne plutôt que globalement
</span>		$html <span class="phpOperator">.=</span> wpautop<span class="phpOperator">(</span><span class="phpFunction">trim</span><span class="phpOperator">(</span>$sections<span class="phpOperator">[</span>$i<span class="phpOperator">]</span><span class="phpOperator">)</span><span class="phpOperator">)</span><span class="phpText">;</span>
		$html <span class="phpOperator">.=</span> <span class="phpString">'<span class="phpOperator">&lt;</span>/div<span class="phpOperator">&gt;</span>'</span><span class="phpText">;</span>
	<span class="phpOperator">}</span>
<span class="phpKeyword">	return </span><span class="phpFunction">trim</span><span class="phpOperator">(</span>$html<span class="phpOperator">)</span><span class="phpText">;</span>
<span class="phpOperator">}</span>
</pre>
<p>Ensuite, dans toutes vos pages de gabarits où vous souhaitez activer ce filtre, il vous suffira d&#8217;ajouter la ligne suivante avant l&#8217;appel à la fonction &lt;?php the_content(); ?&gt; :</p>
<pre class="php">add_filter<span class="phpOperator">(</span><span class="phpString">'the_content'</span>, <span class="phpString">'moreToCols'</span>, <span class="phpNumber">1</span><span class="phpOperator">)</span><span class="phpText">;</span></pre>
<p>Personnellement, je vous recommande de ne l&#8217;utiliser que sur les gabarits <em>single.php</em> ou <em>page.php</em> afin de ne pas briser l&#8217;affichage des listes (<em>archive.php, index.php, etc.</em>).</p>
<p>&#8211;</p>
<p>Votre contenu sera alors modifié de sorte que chaque élément sera enrobé d&#8217;un DIV avec une classe vous permettant aisément d&#8217;ajuster l&#8217;aspect visuel via CSS. Ainsi, un billet avec 2 séparateurs produira le code suivant :</p>
<p>&lt;div class=&#8217;one_third&#8217;&gt;texte avant le premier séparateur&lt;/div&gt;<br />
&lt;div class=&#8217;one_third&#8217;&gt;texte avant le deuxième séparateur&lt;/div&gt;<br />
&lt;div class=&#8217;one_third last&#8217;&gt;texte après le deuxième séparateur&lt;/div&gt;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.estrade.ca/dev/wordpress-entree-plusieurs-colonnes.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[résolu] Problème d&#8217;installation d&#8217;iTunes causé par Windows Installer</title>
		<link>http://www.estrade.ca/dev/resolu-probleme-installation-itunes-windows-installer.html</link>
		<comments>http://www.estrade.ca/dev/resolu-probleme-installation-itunes-windows-installer.html#comments</comments>
		<pubDate>Wed, 24 Nov 2010 01:19:21 +0000</pubDate>
		<dc:creator>Emile Girard</dc:creator>
				<category><![CDATA[Développement]]></category>

		<guid isPermaLink="false">http://www.estrade.ca/?p=1279</guid>
		<description><![CDATA[Bon! Après je ne sais pas combien d&#8217;heures passées à chercher une solution, voilà comment j&#8217;ai réussi &#8211; ridiculement simplement &#8211; à corriger un bug qui semble affecter beaucoup d&#8217;utilisateurs d&#8217;une version de Windows 64 bits (Vista ou Seven). Le problème en question faisait en sorte qu&#8217;à chaque fois que j&#8217;essayais de mettre à jour [...]]]></description>
			<content:encoded><![CDATA[<p>Bon! Après je ne sais pas combien d&#8217;heures passées à chercher une solution, voilà comment j&#8217;ai réussi &#8211; ridiculement simplement &#8211; à corriger un bug qui semble affecter beaucoup d&#8217;utilisateurs d&#8217;une version de Windows 64 bits (Vista ou Seven).</p>
<p>Le problème en question faisait en sorte qu&#8217;à chaque fois que j&#8217;essayais de mettre à jour iTunes et Quicktime, je me retrouvais avec ce message d&#8217;erreur :</p>
<p style="text-align: left;"><a href="http://www.estrade.ca/wp-content/uploads/2010/11/alerte.png"><img class="aligncenter size-full wp-image-1280" title="alerte" src="http://www.estrade.ca/wp-content/uploads/2010/11/alerte.png" alt="" width="378" height="186" /></a></p>
<p style="text-align: left;">Cependant, Windows Installer fonctionne sans aucun problème pour tous les types d&#8217;installation. Donc pour installer iTunes, je n&#8217;avais pas d&#8217;autre solution que de faire une image de mon <em>filesystem</em>, formater l&#8217;ordi et réinstaller Windows. Je réussissais donc à avoir la dernière version d&#8217;iTunes sur une &laquo;&nbsp;fresh install&nbsp;&raquo; mais rien d&#8217;autre. VRAIMENT frustrant&#8230;</p>
<p style="text-align: left;">Or j&#8217;ai tout essayé pour corriger ce problème. TOUT.</p>
<p style="text-align: left;">J&#8217;ai testé au moins 50 solutions suggérées çà et là sur divers forum sans succès&#8230; jusqu&#8217;à ce que je tombe <a href="http://www.forum-seven.com/forum/topic7122.html">sur ce billet</a> qui m&#8217;a littéralement sauvé la vie. Voici donc comment faire pour régler ce fâcheux problème :</p>
<p style="text-align: left; padding-left: 30px;">1) Du menu DÉMARRER, exécutez &laquo;&nbsp;regedit&nbsp;&raquo;</p>
<p style="text-align: left; padding-left: 30px;">2) Naviguez jusqu&#8217;à  :<br />
<strong>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msiserver</strong></p>
<p style="text-align: left; padding-left: 30px;">3) Vous devriez voir quelque chose ressemblant à ça :</p>
<p style="padding-left: 30px; text-align: left;"><a href="http://www.estrade.ca/wp-content/uploads/2010/11/MSIServer.png"><img class="aligncenter size-full wp-image-1281" title="MSIServer" src="http://www.estrade.ca/wp-content/uploads/2010/11/MSIServer.png" alt="" width="582" height="188" /></a></p>
<p style="padding-left: 30px; text-align: left;">4) Faites une sauvegarde de votre base de registre (juste au cas)</p>
<p style="padding-left: 30px; text-align: left;">5) Cliquez sur la clé &laquo;&nbsp;WOW64&#8243; et attribuez-lui la valeur 0 plutôt que 1</p>
<p style="padding-left: 30px; text-align: left;">6) Redémarrez l&#8217;ordi</p>
<p style="padding-left: 30px; text-align: left;">7) Lancez l&#8217;installation d&#8217;iTunes (avec succès!)</p>
<p style="text-align: left;">&#8230; bonne vie!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.estrade.ca/dev/resolu-probleme-installation-itunes-windows-installer.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Buddypress : Ajouter Facebook Like dans le flux d&#8217;activités</title>
		<link>http://www.estrade.ca/dev/wordpress/buddypress-facebook-like-flux-activite.html</link>
		<comments>http://www.estrade.ca/dev/wordpress/buddypress-facebook-like-flux-activite.html#comments</comments>
		<pubDate>Tue, 17 Aug 2010 17:49:37 +0000</pubDate>
		<dc:creator>Emile Girard</dc:creator>
				<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.estrade.ca/?p=1240</guid>
		<description><![CDATA[Voici comment &#8211; après quelques heures de bidouillage &#8211; j&#8217;ai pu arriver à intégrer correctement le bouton Facebook Like dans le flux d&#8217;activités de BuddyPress. Ce qu&#8217;il faut savoir c&#8217;est que le loop de BP nous renvoie un tableau assez volumineux contenant toutes les entrées du flux d&#8217;activités sans égard à son type (à moins [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.estrade.ca/wp-content/uploads/2010/08/bp-facebook-like-activity.png"><img src="http://www.estrade.ca/wp-content/uploads/2010/08/bp-facebook-like-activity-300x161.png" alt="" title="bp-facebook-like-activity" width="300" height="161" class="alignright size-medium wp-image-1247" /></a>Voici comment &#8211; après quelques heures de bidouillage &#8211; j&#8217;ai pu arriver à intégrer correctement le bouton <a href="http://developers.facebook.com/docs/reference/plugins/like">Facebook Like</a> dans le flux d&#8217;activités de BuddyPress.</p>
<p>Ce qu&#8217;il faut savoir c&#8217;est que le loop de BP nous renvoie un tableau assez volumineux contenant toutes les entrées du flux d&#8217;activités sans égard à son type (à moins que l&#8217;utilisateur ait fait sélectionné une méthode de tri). </p>
<p>Ainsi, chaque type (mise à jour, inscription à un groupe, publication sur un forum, etc.) a sa propre façon de gérer ses URLs et cette dernière n&#8217;est malheureusement pas passée en argument dans le Loop : il faut donc la construire.</p>
<p>Le bout de code qui suit ajoutera automatiquement le iFrame de vote pour Facebook à la droite des boutons de réponse en se suppléant au marqueur <strong>do_action(&#8216;bp_activity_entry_meta&#8217;);</strong> présent dans le thème par défaut à l&#8217;endroit souhaité.</p>
<p>Vous remarquerez que personnellement, j&#8217;ai choisi d&#8217;exclure du processus (en ne leur attribuant pas d&#8217;URL) les types tels que : <em>joined_group, new_member, friendship_accepted,</em> et <em>friendship_created</em> pour une raison évidente : on s&#8217;en fou de signaler notre intérêt (<em>like</em>) pour ces éléments!!</p>
<p>Voici donc quoi ajouter dans le fichier <strong><em>functions.php</em></strong> de votre thème BuddyPress : </p>
<pre class="php"><span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span>
<span class="phpComment">/*
 * FACEBOOK LIKE
 *   ajouter le bouton Facebook Like dans le flux des activités
 *   utilise le listener <span class="phpString">'bp_activity_entry_meta'</span> du thème par défaut de BP
*/</span>
<span class="htmlText">
add_action</span><span class="phpOperator">(</span> <span class="phpString">'bp_activity_entry_meta'</span> , <span class="phpString">'facebookLikeActivity'</span><span class="phpOperator">)</span><span class="phpText">;</span>
<span class="phpFunctionKeyword">function</span><span class="htmlText"> facebookLikeActivity</span><span class="phpOperator">(</span><span class="phpOperator">)</span>
<span class="phpOperator">{</span>
<span class="phpKeyword">	global </span>$bp,$activities_template<span class="phpText">;</span>
	<span class="phpComment">// si objet inexistant
</span><span class="phpKeyword">	if<span class="phpOperator">(</span></span><span class="phpOperator">!</span><span class="phpFunction">is_object</span><span class="phpOperator">(</span>$activities_template<span class="phpOperator">)</span><span class="phpOperator">)</span><span class="phpKeyword"> return<span class="phpText">;</span></span>
	<span class="phpComment">// current ID
</span>	$id <span class="phpOperator">=</span> $activities_template<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">current_activity</span><span class="phpText">;</span>
	<span class="phpComment">// trouver le bon lien
</span><span class="phpKeyword">	switch<span class="phpOperator">(</span></span>$activities_template<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">activities</span><span class="phpOperator">[</span>$id<span class="phpOperator">]</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">type</span><span class="phpOperator">)</span> <span class="phpOperator">{</span>
	<span class="phpKeyword">	case </span><span class="phpString">'activity_update'</span> <span class="phpOperator">:</span>
			$link <span class="phpOperator">=</span> $activities_template<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">activities</span><span class="phpOperator">[</span>$id<span class="phpOperator">]</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">primary_link</span><span class="phpText">;</span>
			$link <span class="phpOperator">.=</span> <span class="phpString">'activity/'</span> <span class="phpOperator">.</span> $activities_template<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">activities</span><span class="phpOperator">[</span>$id<span class="phpOperator">]</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">id</span><span class="phpOperator">.</span><span class="phpString">'/'</span><span class="phpText">;</span>
		<span class="phpKeyword">	break<span class="phpText">;</span></span>		
	<span class="phpKeyword">	case </span><span class="phpString">'new_forum_topic'</span> <span class="phpOperator">:</span>
	<span class="phpKeyword">	case </span><span class="phpString">'new_blog_comment'</span> <span class="phpOperator">:</span>
	<span class="phpKeyword">	case </span><span class="phpString">'new_blog_post'</span> <span class="phpOperator">:</span>
	<span class="phpKeyword">	case </span><span class="phpString">'new_forum_post'</span> <span class="phpOperator">:</span>
			$link <span class="phpOperator">=</span> $activities_template<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">activities</span><span class="phpOperator">[</span>$id<span class="phpOperator">]</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">primary_link</span><span class="phpText">;</span>
		<span class="phpKeyword">	break<span class="phpText">;</span></span>
	<span class="phpKeyword">	case </span><span class="phpString">'created_group'</span> <span class="phpOperator">:</span>
			<span class="phpFunction">preg_match_all</span><span class="phpOperator">(</span><span class="phpString">'/href=<span class="phpString">"<span class="phpOperator">(</span><span class="phpOperator">[</span>^"</span><span class="phpOperator">]</span>*<span class="phpOperator">)</span>&quot;/i'</span>, $activities_template<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">activities</span><span class="phpOperator">[</span>$id<span class="phpOperator">]</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span>action, $matches<span class="phpOperator">)</span><span class="phpText">;</span>
			$link <span class="phpOperator">=</span> $matches<span class="phpOperator">[</span><span class="phpNumber">1</span><span class="phpOperator">]</span><span class="phpOperator">[</span><span class="phpNumber">1</span><span class="phpOperator">]</span><span class="phpText">;</span>
		<span class="phpKeyword">	break<span class="phpText">;</span></span>
	<span class="phpKeyword">	case </span><span class="phpString">'joined_group'</span> <span class="phpOperator">:</span>
	<span class="phpKeyword">	case </span><span class="phpString">'new_member'</span> <span class="phpOperator">:</span>
	<span class="phpKeyword">	case </span><span class="phpString">'friendship_accepted'</span> <span class="phpOperator">:</span>
	<span class="phpKeyword">	case </span><span class="phpString">'friendship_created '</span><span class="phpOperator">:</span>
	<span class="phpKeyword">	default </span><span class="phpOperator">:</span>
			$link <span class="phpOperator">=</span><span class="htmlText"> NULL</span><span class="phpText">;</span>
		<span class="phpKeyword">	break<span class="phpText">;</span></span>
	<span class="phpOperator">}</span>
	<span class="phpComment">//ajouter le bouton
</span><span class="phpKeyword">	if<span class="phpOperator">(</span></span>$link<span class="phpOperator">)</span> <span class="phpOperator">:</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
        <span class="htmlOtherTag">&lt;iframe src=<span class="htmlAttributeValue">&quot;http://www.facebook.com/plugins/like.php?href=<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span> <span class="phpFunction">echo</span> <span class="phpFunction">urlencode</span><span class="phpOperator">(</span>$link<span class="phpOperator">)</span><span class="phpText">;</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span></span><span class="htmlSpecialChar">&amp;amp;</span>layout=button_count<span class="htmlSpecialChar">&amp;amp;</span>show_faces=false<span class="htmlSpecialChar">&amp;amp;</span>width=90<span class="htmlSpecialChar">&amp;amp;</span>action=like<span class="htmlSpecialChar">&amp;amp;</span>colorscheme=light<span class="htmlSpecialChar">&amp;amp;</span>height=21&quot;</span> scrolling=<span class="htmlAttributeValue">&quot;no&quot;</span> frameborder=<span class="htmlAttributeValue">&quot;0&quot;</span> style=<span class="htmlAttributeValue">&quot;<span class="cssProperty">position</span><span class="cssRest">:</span><span class="cssValue">relative</span><span class="cssRest">;</span><span class="cssProperty">top</span><span class="cssRest">:</span><span class="cssValue">7px</span><span class="cssRest">;</span><span class="cssProperty">border</span><span class="cssRest">:</span><span class="cssValue">none</span><span class="cssRest">;</span> <span class="cssProperty">overflow</span><span class="cssRest">:</span><span class="cssValue">hidden</span><span class="cssRest">;</span> <span class="cssProperty">width</span><span class="cssRest">:</span><span class="cssValue">90px</span><span class="cssRest">;</span> <span class="cssProperty">height</span><span class="cssRest">:</span><span class="cssValue">21px</span><span class="cssRest">;</span>&quot;</span> allowTransparency=<span class="htmlAttributeValue">&quot;true&quot;</span>&gt;<span class="htmlOtherTag">&lt;/iframe&gt;</span>
    <span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> endif<span class="phpText">;</span></span>
<span class="phpOperator">}</span>
<span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span></pre>
]]></content:encoded>
			<wfw:commentRss>http://www.estrade.ca/dev/wordpress/buddypress-facebook-like-flux-activite.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Convertir un lien vers une image en une miniature (thumbnail)</title>
		<link>http://www.estrade.ca/dev/wordpress/convertir-un-lien-vers-une-image-en-une-miniature-thumbnail.html</link>
		<comments>http://www.estrade.ca/dev/wordpress/convertir-un-lien-vers-une-image-en-une-miniature-thumbnail.html#comments</comments>
		<pubDate>Tue, 18 May 2010 16:21:56 +0000</pubDate>
		<dc:creator>Emile Girard</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[buddypress]]></category>
		<category><![CDATA[images]]></category>
		<category><![CDATA[jquery]]></category>

		<guid isPermaLink="false">http://www.estrade.ca/?p=1209</guid>
		<description><![CDATA[Voici un petit bout de code jQuery bien utile pour convertir tout lien pointant vers une image à une miniature de celle-ci pointant vers l&#8217;originale. Très utile pour un blogue ou un forum! //set image max width imgMaxWidth = 150; //define regex pattern to detect images regexImg = /^http:\/\/(.)+\.(jpg&#124;jpeg&#124;gif&#124;png)$/gi; //parse links $('DIV.activity a').each(function(){ //if a [...]]]></description>
			<content:encoded><![CDATA[<p>Voici un petit bout de code jQuery bien utile pour convertir tout lien pointant vers une image à une miniature de celle-ci pointant vers l&#8217;originale. Très utile pour un blogue ou un forum!</p>
<pre class="javascript">//set image max width
imgMaxWidth = 150;
//define regex pattern to detect images
regexImg = /^http:\/\/(.)+\.(jpg|jpeg|gif|png)$/gi;
//parse links
$('DIV.activity a').each(function(){
	//if a link points to an image
	if($(this).attr('href').match(regexImg)) {
		//add classes
		$(this).addClass('fetchedImgLink');
		//edit target
		$(this).attr('target', '_blank');
		//show image instead of text
		$(this).html("< img class='fetchedImg' src='" + $(this).attr('href') + "' />");
		//check for size
		var currentImg = $(this).find('img');
		var iw = currentImg.width();
		var ih = currentImg.height();
		var ratio = (ih!=0) ? iw/ih : 1;
		//resize if needed
		if(iw > imgMaxWidth) {
			currentImg.width(imgMaxWidth);
			currentImg.height(ih - ((iw-imgMaxWidth) / ratio));
		}
	}
});</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.estrade.ca/dev/wordpress/convertir-un-lien-vers-une-image-en-une-miniature-thumbnail.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Problème de traduction pour Buddypress</title>
		<link>http://www.estrade.ca/dev/wordpress/probleme-traduction-buddypress.html</link>
		<comments>http://www.estrade.ca/dev/wordpress/probleme-traduction-buddypress.html#comments</comments>
		<pubDate>Fri, 09 Apr 2010 01:06:10 +0000</pubDate>
		<dc:creator>Emile Girard</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[buddypress]]></category>
		<category><![CDATA[wordpress mu]]></category>
		<category><![CDATA[wpmu]]></category>

		<guid isPermaLink="false">http://www.estrade.ca/?p=1156</guid>
		<description><![CDATA[J&#8217;expérimente Buddypress depuis quelques jours avec les configurations suivantes : WordPress single install 2.9.2 Buddypress 1.2.3 Buddypress Multilingual 1.0.0 Sitepress Multilingual WPML 1.7.3 Le but est donc d&#8217;avoir un environnement multilingue (via WPML) pour Buddypress sur une installation unique de WP (et non WPMU). Le problème? C&#8217;est que ça ne fonctionne pas. En tout cas, [...]]]></description>
			<content:encoded><![CDATA[<p>J&#8217;expérimente Buddypress depuis quelques jours avec les configurations suivantes :</p>
<ul>
<li><a href="http://wordpress.org">WordPress</a> single install 2.9.2</li>
<li><a href="http://buddypress.org/">Buddypress</a> 1.2.3</li>
<li><a href="http://wordpress.org/extend/plugins/buddypress-multilingual/">Buddypress Multilingual</a> 1.0.0</li>
<li><a href="http://wordpress.org/extend/plugins/sitepress-multilingual-cms/">Sitepress Multilingual WPML</a> 1.7.3</li>
</ul>
<p>Le but est donc d&#8217;avoir un environnement multilingue (via WPML) pour Buddypress sur une installation unique de WP (et non <a href="http://mu.wordpress.org/">WPMU</a>). Le problème? C&#8217;est que ça ne fonctionne pas. En tout cas, ça ne fonctionne pas bien puisque les URLs ne sont pas réécrites correctement pour faire passer le paramètre de langue.</p>
<p>J&#8217;ai trouvé sur le forum officiel de WPML que leur traduction, avec le plugin <em>Buddypress Multilingual</em> servant de pont avec le CMS, <a href="http://forum.wpml.org/topic.php?id=1226#post-5673">ne fonctionne que si Buddypress est installé sur la version WPMU</a> (multi-users) de WordPress, et qu&#8217;ils ne prévoient pas de soutenir la compatibilité pour la <em>single install</em> considérant qu&#8217;en version 3.0, WordPress <a href="http://wpchannel.com/wordpress-3-0-beta-1-disponible/">intègrera les composantes multi-utilisateurs</a>.</p>
<p>Alors en attendant on fait quoi?</p>
<p>Un peu de javascript&#8230;</p>
<p>Voici donc ma recette pour &#8211; temporairement, le temps que WP 3.o émerge en mai prochain &#8211; <strong>forcer l&#8217;insertion du paramètre de langue dans toutes les URLs d&#8217;un site tournant sous Buddypress</strong>.</p>
<p>1) Il faut s&#8217;assurer que le plugin WPML est configuré de sorte que le paramètre de langue soit passé en query string, du genre : http://monsite.com/buddypress/article?lang=en et non la formule par défaut.</p>
<p>2) Ensuite on ajoute ce bout de code nécessitant jQuery :</p>
<pre class="javascript">//set image max width
imgMaxWidth = 150;
//define regex pattern to detect images
regexImg = /^http:\/\/(.)+\.(jpg|jpeg|gif|png)$/gi;
//parse links
$('DIV.activity a').each(function(){
	//if a link points to an image
	if($(this).attr('href').match(regexImg)) {
		//add classes
		$(this).addClass('fetchedImgLink');
		//edit target
		$(this).attr('target', '_blank');
		//show image instead of text
		$(this).html('<img class="fetchedImg" src="' + $(this).attr('href') + '" />');
		//check for size
		var currentImg = $(this).find('img');
		var iw = currentImg.width();
		var ih = currentImg.height();
		var ratio = (ih!=0) ? iw/ih : 1;
		//resize if needed
		if(iw > imgMaxWidth) {
			currentImg.width(imgMaxWidth);
			currentImg.height(ih - ((iw-imgMaxWidth) / ratio));
		}
	}
});</pre>
<p>Ce que ce code fait, c&#8217;est qu&#8217;il détecte si on est dans une version linguistique autre que celle par défaut (donc on a un paramètre de langue initialement). Si tel est le cas, le paramètre est ajouté à chaque lien de la page, mais pas à ceux de la boîte de sélection de langue de WPML (DIV#lang_sel).</p>
<p>Et ça dépanne, en attendant.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.estrade.ca/dev/wordpress/probleme-traduction-buddypress.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>iPhone : problème de positionnement absolu</title>
		<link>http://www.estrade.ca/dev/iphone-position-absolute-menu-fixe.html</link>
		<comments>http://www.estrade.ca/dev/iphone-position-absolute-menu-fixe.html#comments</comments>
		<pubDate>Tue, 16 Feb 2010 23:04:44 +0000</pubDate>
		<dc:creator>Emile Girard</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[application]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[position]]></category>

		<guid isPermaLink="false">http://www.estrade.ca/?p=1070</guid>
		<description><![CDATA[Voilà que je me bute à un problème : réussir à attacher à la fenêtre de Safari un menu de navigation rappelant une application iPhone. Rien de plus facile avec la propriété CSS position:fixed; n&#8217;est-ce pas? Eh bien non justement. Et pourquoi donc? Parce qu&#8217;Apple, dans sa version mobile de Safari uniquement, a décidé de [...]]]></description>
			<content:encoded><![CDATA[<p>Voilà que je me bute à un problème : réussir à attacher à la fenêtre de Safari un menu de navigation rappelant une application iPhone.</p>
<p>Rien de plus facile avec la propriété CSS <em><strong>position:fixed;</strong></em> n&#8217;est-ce pas?</p>
<p>Eh bien non justement. Et pourquoi donc?</p>
<p>Parce qu&#8217;Apple, dans sa version mobile de Safari uniquement, a <a href="http://www.quirksmode.org/blog/archives/2009/11/apple_is_not_ev.html#c12769" target="_blank">décidé de ne pas supporter cette propriété</a> question d&#8217;empêcher quiconque (moi en particulier) de faire un site mobile qui ressemblerait trop à une Application.</p>
<p>Autre solution : créer deux zones (#content et #footer) qui se partagent la fenêtre du iPhone (320&#215;240). On positionne le #footer collé au bas, le #content prend le reste de la hauteur et on lui ajoute un <em><strong>overflow:auto;</strong></em> pour permettre la navigation dans le conteneur principal. Rien de plus simple encore une fois, mais est-ce que ça fonctionne?</p>
<p>NON PLUS!</p>
<p>Encore une fois, notre ami Safari Mobile empêche la navigation à l&#8217;intérieur d&#8217;un DIV avec <em>overflow:auto;</em> autrement qu&#8217;en utilisant ses 2 doigts pour faire le défilement. Pratique et intuitif non? D&#8217;ailleurs je gage vous ne le saviez même pas&#8230;</p>
<p>Mon prochain test sera de passer par un IFRAME, mais vous vous doutez certainement que je n&#8217;en ai pas du tout envie de m&#8217;aventurer là-dedans&#8230;</p>
<p>&#8211;</p>
<p>Comme solution alternative existe cependant <a href="http://doctyper.com/archives/200808/fixed-positioning-on-mobile-safari/" target="_blank">ce script très intéressant</a> que j&#8217;ai déniché et qui émule les actions de navigation en javascript. Toutefois ce dernier donne une expérience utilisateur plutôt désagréable et très saccadée.</p>
<p>&#8211;</p>
<p>Il y a toutefois un peu de lumière au bout du tunnel avec <a href="http://www.jqtouch.com/" target="_blank">jQTouch</a>, une librairie HTML5 reprenant toutes les animations et interfaces propre au iPhone dans une version compatible avec le <em>webkit mobile</em>.</p>
<p>Reste à voir si ça marchera correctement.</p>
<p>Mais dans l&#8217;intervalle Apple, je suis extrêmement déçu.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.estrade.ca/dev/iphone-position-absolute-menu-fixe.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>BuddyPress n&#8217;a plus besoin de WordPress MU</title>
		<link>http://www.estrade.ca/dev/wordpress/buddypress-plus-besoin-wordpress-mu.html</link>
		<comments>http://www.estrade.ca/dev/wordpress/buddypress-plus-besoin-wordpress-mu.html#comments</comments>
		<pubDate>Tue, 05 Jan 2010 15:28:45 +0000</pubDate>
		<dc:creator>Emile Girard</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[buddypress]]></category>
		<category><![CDATA[wordpress mu]]></category>

		<guid isPermaLink="false">http://www.estrade.ca/?p=1046</guid>
		<description><![CDATA[Voilà une excellente nouvelle que cette annonce à l&#8217;effet que BuddyPress pourra maintenant rouler comme un plugin de WordPress, et n&#8217;aura plus (nécessairement) besoin de WordPress MU. J&#8217;ai toujours été extrêmement septique à l&#8217;endroit de MU &#8211; dont on annonce déjà la mort lors du passage en version 3.0 de WP &#8211; et de savoir [...]]]></description>
			<content:encoded><![CDATA[<p>Voilà une excellente nouvelle que <a href="http://bit.ly/5DV8zN" target="_blank">cette annonce</a> à l&#8217;effet que BuddyPress pourra maintenant rouler comme un <em>plugin </em>de WordPress, et n&#8217;aura plus (nécessairement) besoin de <a href="http://mu.wordpress.org/" target="_blank">WordPress MU</a>.</p>
<p>J&#8217;ai toujours été extrêmement septique à l&#8217;endroit de MU &#8211; dont on annonce déjà la mort lors du passage en <a href="http://wordpress.org/support/topic/345127" target="_blank">version 3.0 de WP</a> &#8211; et de savoir qu&#8217;on pourra utiliser les fonctionnalités incroyable de BuddyPress sur une installation simple m&#8217;emballe.</p>
<p>Amis développeurs, avez-vous eu l&#8217;occasion de le tester un peu?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.estrade.ca/dev/wordpress/buddypress-plus-besoin-wordpress-mu.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Page Caching using disk (enhanced)
Object Caching 1298/1386 objects using disk

Served from: www.estrade.ca @ 2012-02-04 19:14:07 -->
