<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Julien Appert</title>
	
	<link>http://julienappert.com</link>
	<description>Développeur / intégrateur web indépendant</description>
	<lastBuildDate>Sun, 17 Jul 2011 16:51:55 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/JulienAppert" /><feedburner:info uri="julienappert" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>JulienAppert</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>Nouveau plugin WP : Reply and Email</title>
		<link>http://feedproxy.google.com/~r/JulienAppert/~3/FP1ZmDGhce0/nouveau-plugin-wp-reply-and-email.html</link>
		<comments>http://julienappert.com/nouveau-plugin-wp-reply-and-email.html#comments</comments>
		<pubDate>Sun, 17 Jul 2011 16:51:55 +0000</pubDate>
		<dc:creator>Julien Appert</dc:creator>
				<category><![CDATA[Plugins wordpress]]></category>
		<category><![CDATA[commentaire]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[reply and comment]]></category>
		<category><![CDATA[réponse]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://julienappert.com/?p=448</guid>
		<description><![CDATA[Vous connaissez probablement tous le fameux (et vieux) Subscribe to Comments, qui permet de s&#8217;abonner aux commentaires d&#8217;un billet. Il est très utile quand on veut suivre les commentaires d&#8217;un billet intéressant, mais parfois, on veut juste savoir si quelqu&#8217;un répond à notre propre commentaire&#8230; C&#8217;est là que Reply and Email intervient ! Grâce à [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://julienappert.com/wordpress/wp-content/uploads/2011/07/reply-and-email.jpg" alt="" title="reply-and-email" width="600" height="201" class="aligncenter size-full wp-image-451" /><br />
Vous connaissez probablement tous le fameux (et vieux) Subscribe to Comments, qui permet de s&#8217;abonner aux commentaires d&#8217;un billet. Il est très utile quand on veut suivre les commentaires d&#8217;un billet intéressant, mais <strong>parfois, on veut juste savoir si quelqu&#8217;un répond à notre propre commentaire</strong>&#8230;</p>
<p>C&#8217;est là que Reply and Email intervient ! Grâce à ce plugin que je viens de développer, <strong>fini d&#8217;être spammé dès qu&#8217;un nouveau commentaire arrive sur un billet</strong> où l&#8217;on s&#8217;est inscrit il y a des années&#8230; </p>
<h2>Comment ça marche ?</h2>
<p>Dans votre administration WordPress, vous pouvez activer les commentaires imbriqués. Cette option très pratique permet de classer visuellement les conversations. Si cette option est activée, bien évidemment, Reply and Email l&#8217;utilise pour fonctionner.</p>
<p>Mais peut-être ne souhaitez-vous pas activer les commentaires imbriqués ? Et je le comprends très bien, car c&#8217;est mon cas (on ne va cependant pas disserter ici des avantages et inconvénients de cette option). Alors soit, si cette option n&#8217;est pas activée, Reply and Email fonctionnera tout de même ! Dans ce cas, le plugin ajoutera de manière automatique (ou non, au choix) un lien &laquo;&nbsp;répondre&nbsp;&raquo; qui ajoutera le code suivant dans le champ de commentaire :</p>
<pre>@&lt;a href="#comment-23" rel="nofollow"&gt;Julien Appert&lt;/a&gt;:</pre>
<p>Pour tout le monde, ceci est un lien vers le commentaire d&#8217;origine. Pour le plugin, c&#8217;est une balise qui permet d&#8217;identifier le commentaire auquel on répond, et ainsi faire tourner la moulinette de la réponse par mail.</p>
<h2>On peut le tester ?</h2>
<p>Bien entendu ! Déjà, vous pouvez voir ce que ça donne ici même. Si ça vous tente, vous pouvez même <a href="http://julienappert.com/wordpress/wp-content/uploads/downloads/2011/07/reply-and-email.zip">télécharger la version 0.1 de Reply and Email</a> pour la tester chez vous.</p>
<p>Pour le moment, je ne publie pas le plugin sur wordpress.org. Je vais déjà attendre vos retours, et il faut que je me penche sur la traduction en anglais&#8230; D&#8217;ailleurs si ça branche l&#8217;un d&#8217;entre vous de m&#8217;aider à ce niveau, je suis preneur (je suis plutôt Molière que Shakespeare, si vous voyez ce que je veux dire).</p>
<img src="http://feeds.feedburner.com/~r/JulienAppert/~4/FP1ZmDGhce0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://julienappert.com/nouveau-plugin-wp-reply-and-email.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://julienappert.com/nouveau-plugin-wp-reply-and-email.html</feedburner:origLink></item>
		<item>
		<title>Désactiver la barre d’administration WordPress</title>
		<link>http://feedproxy.google.com/~r/JulienAppert/~3/bI3oz27WCDU/desactiver-la-barre-d-administration-wordpress.html</link>
		<comments>http://julienappert.com/desactiver-la-barre-d-administration-wordpress.html#comments</comments>
		<pubDate>Fri, 15 Apr 2011 09:06:09 +0000</pubDate>
		<dc:creator>Julien Appert</dc:creator>
				<category><![CDATA[Trucs et astuces]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://julienappert.com/?p=442</guid>
		<description><![CDATA[Si vous avez effectué la mise à jour vers WordPress 3.1, vous avez sûrement noté la présence nouvelle d&#8217;une barre d&#8217;administration en haut de votre site. Très pratique, elle vous permet d&#8217;accéder rapidement aux pages principales de votre administration. Mais enfin, peut-être qu&#8217;elle vous dérange plus qu&#8217;autre chose, cette barre. Et après tout, vous êtes [...]]]></description>
			<content:encoded><![CDATA[<p>Si vous avez effectué la mise à jour vers WordPress 3.1, vous avez sûrement noté la présence nouvelle d&#8217;une barre d&#8217;administration en haut de votre site. Très pratique, elle vous permet d&#8217;accéder rapidement aux pages principales de votre administration. </p>
<p>Mais enfin, peut-être qu&#8217;elle vous dérange plus qu&#8217;autre chose, cette barre. Et après tout, vous êtes maître chez vous. Voici donc une ligne de code à placer dans le fichier functions.php de votre thème :</p>
<pre>show_admin_bar( false );</pre>
<p>Et la barre disparait !</p>
<img src="http://feeds.feedburner.com/~r/JulienAppert/~4/bI3oz27WCDU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://julienappert.com/desactiver-la-barre-d-administration-wordpress.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://julienappert.com/desactiver-la-barre-d-administration-wordpress.html</feedburner:origLink></item>
		<item>
		<title>Supprimer les flux RSS dans WordPress</title>
		<link>http://feedproxy.google.com/~r/JulienAppert/~3/POs9VzvIYgQ/supprimer-les-flux-rss-dans-wordpress.html</link>
		<comments>http://julienappert.com/supprimer-les-flux-rss-dans-wordpress.html#comments</comments>
		<pubDate>Tue, 22 Mar 2011 15:37:33 +0000</pubDate>
		<dc:creator>Julien Appert</dc:creator>
				<category><![CDATA[Trucs et astuces]]></category>
		<category><![CDATA[flux rss]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://julienappert.com/?p=421</guid>
		<description><![CDATA[Les flux RSS sont certes très pratiques, mais si vous utilisez WordPress pour motoriser un site vitrine, ils n&#8217;ont plus aucun intérêt. Malheureusement, WordPress ne permet pas de désactiver ces derniers via son interface de configuration. Il faut donc mettre les mains dans le code pour arriver à nos fins. Les codes suivants sont à [...]]]></description>
			<content:encoded><![CDATA[<p>Les flux RSS sont certes très pratiques, mais si vous utilisez WordPress pour motoriser un site vitrine, ils n&#8217;ont plus aucun intérêt. Malheureusement, WordPress ne permet pas de désactiver ces derniers via son interface de configuration. Il faut donc mettre les mains dans le code pour arriver à nos fins. Les codes suivants sont à ajouter dans le fichier functions.php de votre thème.</p>
<p>Tout d&#8217;abord, il convient de désactiver les flux eux-mêmes :</p>
<pre>
add_action('do_feed', 'disable_feed', 1);
add_action('do_feed_rdf', 'disable_feed', 1);
add_action('do_feed_rss', 'disable_feed', 1);
add_action('do_feed_rss2', 'disable_feed', 1);
add_action('do_feed_atom', 'disable_feed', 1);

function disable_feed(){
     wp_die('Les flux RSS pour ce site sont désactivés.');
}
</pre>
<p>Grâce au code ci-dessus, les différentes pages de flux afficheront uniquement votre message.</p>
<p>Ensuite, il faut supprimer les liens d&#8217;abonnement. Si vous êtes parti d&#8217;un thème existant pour réaliser votre site, il y a de fortes chances que vous trouviez la ligne suivante, quelque part dans le fichier functions.php :</p>
<pre>add_theme_support( 'automatic-feed-links' );</pre>
<p>Si c&#8217;est le cas, supprimez la ligne et les liens pour s&#8217;abonner aux flux disparaitront.</p>
<p>Dernier point, le flux des commentaires. Lorsque vous affichez un article avec WordPress, le flux des commentaires de l&#8217;article s&#8217;ajoute à la liste des abonnements. Vous souhaitez le supprimer ? Copiez le code suivant :</p>
<pre>
function remove_rss() {
    return;
}
add_filter('post_comments_feed_link','remove_rss');
</pre>
<p> d&#8217;</p>
<img src="http://feeds.feedburner.com/~r/JulienAppert/~4/POs9VzvIYgQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://julienappert.com/supprimer-les-flux-rss-dans-wordpress.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://julienappert.com/supprimer-les-flux-rss-dans-wordpress.html</feedburner:origLink></item>
		<item>
		<title>WordPress et la disparition de l’éditeur wysiwyg</title>
		<link>http://feedproxy.google.com/~r/JulienAppert/~3/vuEawjpqQ9k/wordpress-et-la-disparition-de-lediteur-wysiwyg.html</link>
		<comments>http://julienappert.com/wordpress-et-la-disparition-de-lediteur-wysiwyg.html#comments</comments>
		<pubDate>Wed, 16 Mar 2011 20:48:40 +0000</pubDate>
		<dc:creator>Julien Appert</dc:creator>
				<category><![CDATA[Trucs et astuces]]></category>
		<category><![CDATA[mise à jour]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wysiwyg]]></category>

		<guid isPermaLink="false">http://julienappert.com/?p=419</guid>
		<description><![CDATA[En écrivant l&#8217;article précédent, je me suis rendu compte que l&#8217;éditeur wysiwyg de wordpress avait disparu. J&#8217;utilise toujours l&#8217;éditeur HTML, donc ce n&#8217;est pas franchement un problème, mais tout de même. Après une rapide recherche sur Google, j&#8217;ai compris que l&#8217;erreur provenait de la dernière mise à jour de wordpress. En effet, lors de celle-ci, [...]]]></description>
			<content:encoded><![CDATA[<p>En écrivant l&#8217;article précédent, je me suis rendu compte que l&#8217;éditeur wysiwyg de wordpress avait disparu. J&#8217;utilise toujours l&#8217;éditeur HTML, donc ce n&#8217;est pas franchement un problème, mais tout de même. Après une rapide recherche sur Google, j&#8217;ai compris que l&#8217;erreur provenait de la dernière mise à jour de wordpress. En effet, lors de celle-ci, <strong>il arrive que le fichier wp-tinymce.js.gz soit corrompu</strong>. Si la même chose vous arrive, pas de panique, il suffit donc de remplacer ce fichier par la bonne version avec votre logiciel FTP, et tout devrait rentrer dans l&#8217;ordre.</p>
<img src="http://feeds.feedburner.com/~r/JulienAppert/~4/vuEawjpqQ9k" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://julienappert.com/wordpress-et-la-disparition-de-lediteur-wysiwyg.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://julienappert.com/wordpress-et-la-disparition-de-lediteur-wysiwyg.html</feedburner:origLink></item>
		<item>
		<title>Police personnalisée : de cufon à font-face</title>
		<link>http://feedproxy.google.com/~r/JulienAppert/~3/fS9Uc0gNq7w/police-personnalisee-de-cufon-a-font-face.html</link>
		<comments>http://julienappert.com/police-personnalisee-de-cufon-a-font-face.html#comments</comments>
		<pubDate>Wed, 16 Mar 2011 17:58:23 +0000</pubDate>
		<dc:creator>Julien Appert</dc:creator>
				<category><![CDATA[Trucs et astuces]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[intégrateur]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[navigateur]]></category>
		<category><![CDATA[police]]></category>

		<guid isPermaLink="false">http://julienappert.com/?p=407</guid>
		<description><![CDATA[Jusqu&#8217;ici, pour afficher une police personnalisée sur un site web, j&#8217;utilisais le service Cufon. Très pratique, il suffit de charger votre police dans leur formulaire et vous obtenez en retour un fichier javascript que vous pouvez ensuite utiliser sur votre site. Mais ce matin, en installant Internet Explorer 9, j&#8217;ai eu une mauvaise surprise&#8230; En [...]]]></description>
			<content:encoded><![CDATA[<p>Jusqu&#8217;ici, pour afficher une police personnalisée sur un site web, j&#8217;utilisais le service <a href="http://cufon.shoqolate.com/generate/">Cufon</a>. Très pratique, il suffit de charger votre police dans leur formulaire et vous obtenez en retour un fichier javascript que vous pouvez ensuite utiliser sur votre site. Mais ce matin, en installant Internet Explorer 9, j&#8217;ai eu une mauvaise surprise&#8230; En effet, <strong>la version de cufon que j&#8217;utilisais pour le site que vous avez sous les yeux n&#8217;était tout simplement pas compatible avec cette nouvelle version d&#8217;IE</strong>. En lieu et place de mes textes, j&#8217;obtenais&#8230; rien, rien du tout. Plus rien ne s&#8217;affichait. Problématique n&#8217;est-ce pas ? Alors certes, la dernière version de Cufon est IE9-compatible, et ce serait rapide de la mettre à jour. Mais dans ma tête ont défilé toutes les intégrations pour lesquelles j&#8217;avais utilisé ce service, et qu&#8217;il faudra également mettre à jour.</p>
<p>Et là je me suis dit stop ! Passons à une méthode plus pérenne, passons à font-face.</p>
<h2>Rapide historique</h2>
<p>Par défaut, un navigateur va utiliser les polices d&#8217;écriture présentes sur l&#8217;ordinateur de l&#8217;internaute pour afficher le texte d&#8217;un site web. Ce qui explique que nous soyons assez limités en terme de diversité d&#8217;écriture, car <strong>les polices disponibles sur tous les ordinateurs ne sont qu&#8217;une poignée</strong>. Il y a encore quelques années, pour rompre la monotonie, nous utilisions des images. Le problème : des sites plus lourds à charger et des textes impossibles à analyser pour les moteurs de recherche. </p>
<p>Puis les scripts tels que Cufon sont apparus. Le principe : vous affichez du vrai texte sur votre site web, et une surcouche javascript passe par dessus pour transformer la police d&#8217;écriture. L&#8217;inconvénient : le javascript doit être activé sur le navigateur de l&#8217;internaute&#8230; et il faut régulièrement mettre à jour le script pour assurer sa compatibilité avec les nouvelles versions de navigateurs.</p>
<h2>Le tant attendu font-face</h2>
<p>Or, <strong>depuis quelques années, il existe une règle css censée nous changer la vie : font-face</strong>. Elle permet d&#8217;afficher une police d&#8217;écriture personnalisée que vous aurez préalablement chargée sur votre site web. Par conséquent, au lieu d&#8217;aller chercher une police sur l&#8217;ordinateur de l&#8217;internaute (sans assurance de la trouver), le navigateur va simplement chercher la police sur votre site. Mais cette règle css n&#8217;a été implémentée qu&#8217;assez récemment sur les navigateurs modernes (tandis qu&#8217;Internet Explorer le gère depuis sa version 4.0).</p>
<p>Font-face est disponible depuis :</p>
<ul>
<li>Firefox 3.5</li>
<li>Opera 10</li>
<li>Safari 3.1</li>
<li>Chrome 3.0</li>
<li>Internet Explorer 4</li>
</ul>
<h2>Comment utiliser font-face</h2>
<p>A présent que font-face est largement disponible, il est donc possible de l&#8217;utiliser ! Comment ? Voici les 3 lignes de code css indispensables : </p>
<pre>
@font-face {
    font-family: 'Police';
    src: url('police.eot'); // IE
	src:local("Police"),url('police.ttf') format('truetype');
}
</pre>
<p>Vous aurez remarqué qu&#8217;IE nécessite un format de fichier particulier. Les autres navigateurs feront leur affaire avec le format truetype, mais certains vont préférer d&#8217;autres formats de police que vous pouvez également fournir de la manière suivante :</p>
<pre>
url('police.woff') format('woff'),
url('police.svg') format('svg');
</pre>
<p>Ensuite pour faire appel à cette police, utilisez la méthode traditionnelle :</p>
<pre>
h1{ font-family:"Police", Arial, sans-serif;}
</pre>
<p>La question est : <strong>où trouver ces formats de fichiers ?</strong> Vous pouvez par exemple acheter la police sur le site <a href="http://new.myfonts.com/">MyFonts</a>, où vous trouverez ces différents formats dans le zip téléchargeable. Mais si vous avez en votre possession un fichier ttf ou oft, faites un tour sur le site <a href="http://www.fontsquirrel.com/fontface/generator">Fontsquirrel</a>, qui met à votre disposition un &laquo;&nbsp;@font-face generator&nbsp;&raquo;, lequel vous fournira les versions converties de votre police.</p>
<p>Je vous conseille également d&#8217;aller lire <a href="http://www.slideshare.net/yvg/css-fontface-des-polices-personnalises">la présentation d&#8217;Yves Van Goethem</a>, qui vous apportera quelques informations complémentaires, notamment en terme d&#8217;optimisation.</p>
<img src="http://feeds.feedburner.com/~r/JulienAppert/~4/fS9Uc0gNq7w" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://julienappert.com/police-personnalisee-de-cufon-a-font-face.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://julienappert.com/police-personnalisee-de-cufon-a-font-face.html</feedburner:origLink></item>
		<item>
		<title>Mise à jour automatique de WordPress chez 1&amp;1</title>
		<link>http://feedproxy.google.com/~r/JulienAppert/~3/VkjMu7Io8cQ/mise-a-jour-automatique-de-wordpress-chez-11-2.html</link>
		<comments>http://julienappert.com/mise-a-jour-automatique-de-wordpress-chez-11-2.html#comments</comments>
		<pubDate>Thu, 30 Dec 2010 10:42:15 +0000</pubDate>
		<dc:creator>Julien Appert</dc:creator>
				<category><![CDATA[Trucs et astuces]]></category>
		<category><![CDATA[1&1]]></category>
		<category><![CDATA[fatal error]]></category>
		<category><![CDATA[hébergement]]></category>
		<category><![CDATA[mémoire]]></category>
		<category><![CDATA[mise à jour]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://julienappert.com/?p=378</guid>
		<description><![CDATA[Si, comme moi, votre hébergement est un serveur mutualisé chez 1&#38;1, vous avez certainement un problème similaire au mien, à savoir pas assez de mémoire allouée pour effectuer les mises à jour du core. Par défaut, 1&#38;1 règle la mémoire à 32MB, alors que WordPress semble en requérir beaucoup plus&#8230; Résultat, vous vous retrouvez avec [...]]]></description>
			<content:encoded><![CDATA[<p>Si, comme moi, votre hébergement est un serveur mutualisé chez 1&amp;1, vous avez certainement un problème similaire au mien, à savoir pas assez de mémoire allouée pour effectuer les mises à jour du core. <strong>Par défaut, 1&amp;1 règle la mémoire à 32MB, alors que WordPress semble en requérir beaucoup plus&#8230;</strong> Résultat, vous vous retrouvez avec une erreur de type :</p>
<blockquote><p>Fatal error: Out of memory (allocated 31981568) (tried to allocate 3528484 bytes)</p></blockquote>
<p>Le service technique de 1&amp;1 a répondu à mon mail <del datetime="2010-12-30T10:01:42+00:00">d&#8217;insultes</del> d&#8217;appel à l&#8217;aide en m&#8217;expliquant comment augmenter la mémoire allouée jusqu&#8217;à la valeur ô combien vertigineuse de 40MB. Ouch. Comment dire. Ça ne sera pas suffisant.</p>
<p>Bon, qu&#8217;à cela ne tienne, je me suis remonté les manches et <strong>j&#8217;ai trouvé une solution bâtarde, c&#8217;est à dire à mi-chemin entre la mise à jour manuelle et la mise à jour automatique</strong>. Pourquoi ne pas faire simplement une mise à jour manuelle, allez-vous me demander ? Simplement parce que celle-ci prend trop de temps et est fortement génératrice de stress (même quand on sait comment s&#8217;y prendre). Bref, ma solution est la suivante :</p>
<ol>
<li><strong>Télécharger </strong>le fichier zip de la dernière version de WordPress</li>
<li>L&#8217;<strong>uploader </strong>via FTP dans un dossier de WordPress (j&#8217;ai choisi <code>wp-content</code>, mais ça peut être n&#8217;importe où)</li>
<li><strong>Modifier </strong>le fichier <code>wp-admin/includes/class-wp-upgrader.php</code>  :</li>
</ol>
<p>Rendez-vous à la ligne 878 (<code>class Core_Upgrader</code>, <code>function upgrade</code>), à savoir au niveau du code suivant :</p>
<pre class="brush: php; title: ;">$download = $this-&gt;download_package( $current-&gt;package );</pre>
<p>Et remplacez le par ceci :</p>
<pre class="brush: php; title: ;">
if($current-&gt;package == 'http://fr.wordpress.org/wordpress-3.0.4-fr_FR.zip')
 $download = '/chemin/vers/le/fichier/wordpress-3.0.4-fr_FR.zip';
 else
 $download = $this-&gt;download_package( $current-&gt;package );
</pre>
<p>Théoriquement, on devrait pouvoir se contenter de la ligne 2, mais je préfère prendre mes précautions.</p>
<p>L&#8217;exemple est évidemment à adapter avec la version de WordPress idoine. Si vous ne connaissez pas le chemin exact de votre site, c&#8217;est simple, vous l&#8217;avez à la fin de la &laquo;&nbsp;Fatal error&nbsp;&raquo; mentionnée plus haut. Après cela, lancez à nouveau la mise à jour automatique. Miracle, ça passe tout seul !</p>
<p>Le fichier que vous venez de modifier sera évidemment remplacé par la mise à jour, donc ne vous étonnez pas, il vous faudra recommencer cette manipulation à chaque fois que vous voudrez mettre à jour le core (et accessoirement, revenir sur cet article pour copier/coller le code <img src='http://julienappert.com/wordpress/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  )</p>
<img src="http://feeds.feedburner.com/~r/JulienAppert/~4/VkjMu7Io8cQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://julienappert.com/mise-a-jour-automatique-de-wordpress-chez-11-2.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://julienappert.com/mise-a-jour-automatique-de-wordpress-chez-11-2.html</feedburner:origLink></item>
		<item>
		<title>Filtrer les plugins disponibles sur un WordPress Multisite</title>
		<link>http://feedproxy.google.com/~r/JulienAppert/~3/WZUQ5yIQbIk/filtrer-les-plugins-disponibles-sur-un-wordpress-multisite.html</link>
		<comments>http://julienappert.com/filtrer-les-plugins-disponibles-sur-un-wordpress-multisite.html#comments</comments>
		<pubDate>Tue, 21 Sep 2010 21:42:07 +0000</pubDate>
		<dc:creator>Julien Appert</dc:creator>
				<category><![CDATA[Trucs et astuces]]></category>
		<category><![CDATA[multisite]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://julienappert.com/?p=370</guid>
		<description><![CDATA[Je suis de plus en plus souvent amené à développer sur du WordPress en mode multisite, c&#8217;est à dire avec une gestion de blogs multiples. En général, le schéma est le suivant : un site général d&#8217;un côté (couplé avec BuddyPress pour les aspects sociaux) et des blogs d&#8217;utilisateurs de l&#8217;autre côté. Immanquablement vient alors [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-372 shadow" title="exclude-plugins" src="http://julienappert.com/wordpress/wp-content/uploads/2010/09/exclude-plugins.jpg" alt="" width="600" height="306" /></p>
<p>Je suis de plus en plus souvent amené à développer sur du WordPress en mode multisite, c&#8217;est à dire avec une gestion de blogs multiples. En général, le schéma est le suivant : un site général d&#8217;un côté (couplé avec BuddyPress pour les aspects sociaux) et des blogs d&#8217;utilisateurs de l&#8217;autre côté.</p>
<p>Immanquablement vient alors la question des plugins. On peut être amené à en installer plusieurs pour le fonctionnement du site général, mais<strong> on ne veut pas forcément que les utilisateurs puissent avoir également accès à tous ces plugins sur leurs blogs&#8230;</strong></p>
<p>Par défaut, WordPress gère deux modes de gestion des plugins : <strong>l&#8217;activation simple et l&#8217;activation sur le réseau</strong>. Si vous activez un plugin sur le réseau, il sera alors installé d&#8217;office partout, sans possibilité pour les utilisateurs de le désactiver. Cela peut être utile, dans certains cas, mais c&#8217;est malheureusement le contraire de ce que l&#8217;on voudrait ici ! Quant à l&#8217;activation simple, elle permet à chaque utilisateur de choisir quel plugin il désire utiliser sur son blog. <strong>En résumé, si vous installez un plugin sur un WordPress multisite, tout le monde y aura accès, soit par obligation, soit par choix</strong>.</p>
<p>Par conséquent, pour filtrer les plugins disponibles sur les blogs d&#8217;utilisateurs sans avoir à se restreindre sur le site général, il faudra passer par l&#8217;installation&#8230; d&#8217;un plugin.</p>
<p><strong>Si vous travaillez sur une version moderne de WordPress</strong> (3.0 ou plus), vous pouvez utiliser le très bon <a href="http://wordpress.org/extend/plugins/exclude-plugins/">Exclude Plugins</a>, développé par un certain <a href="http://itx.web.id/">ITX</a>.</p>
<p><strong>Si vous devez faire avec un vieux wpmu</strong> (par exemple un 2.9), Exclude Plugins ne pourra rien pour vous, car sa compatibilité ne descend pas jusque là. Mais je ne vais pas vous laisser en plan comme ça. Avec WordPress, on trouve toujours une solution, vous pensez bien. Je vous suggère alors l&#8217;installation de <a href="http://wordpress.org/extend/plugins/plugin-commander/">Plugin Commander</a>, qui fonctionne à partir de WordPress 2.8. Oh il fonctionne aussi avec les versions plus récentes, mais après avoir testé les deux plugins, je dois vous avouer une nette préférence pour Exclude Plugins (mieux développé, mieux structuré, à mon avis).</p>
<p>Voilà pour l&#8217;astuce, c&#8217;est cadeau ! J&#8217;en profite pour m&#8217;excuser auprès de tous ceux qui ont commenté sur ce blog à propos de mes différents plugins. Je peine à trouver le temps de m&#8217;en occuper, et donc à vous répondre. J&#8217;espère trouver le temps bientôt. Oh, et sinon, j&#8217;ai cru comprendre que la prochaine version de WordPress inclurait une fonctionnalité inspirée de Link to Post&#8230; A vérifier !</p>
<img src="http://feeds.feedburner.com/~r/JulienAppert/~4/WZUQ5yIQbIk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://julienappert.com/filtrer-les-plugins-disponibles-sur-un-wordpress-multisite.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://julienappert.com/filtrer-les-plugins-disponibles-sur-un-wordpress-multisite.html</feedburner:origLink></item>
		<item>
		<title>Link to Post : nouveautés pour la version 1.0</title>
		<link>http://feedproxy.google.com/~r/JulienAppert/~3/3TC4h3VwfyI/link-to-post-nouveautes-pour-la-version-1-0.html</link>
		<comments>http://julienappert.com/link-to-post-nouveautes-pour-la-version-1-0.html#comments</comments>
		<pubDate>Sat, 05 Jun 2010 07:53:43 +0000</pubDate>
		<dc:creator>Julien Appert</dc:creator>
				<category><![CDATA[Plugins wordpress]]></category>
		<category><![CDATA[développeur]]></category>
		<category><![CDATA[link to post]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://julienappert.com/?p=356</guid>
		<description><![CDATA[Eh bien, cela fait un certain temps que je n&#8217;ai pas posté ici. Quasiment trois mois&#8230; Il faut dire que ces derniers mois n&#8217;ont pas été de tout repos, professionnellement parlant. Ce qui est plutôt un bon signe à vrai dire. Bref ! Il y a quelques semaines déjà, j&#8217;ai développé une mise à jour [...]]]></description>
			<content:encoded><![CDATA[<p>Eh bien, cela fait un certain temps que je n&#8217;ai pas posté ici. Quasiment trois mois&#8230; Il faut dire que ces derniers mois n&#8217;ont pas été de tout repos, professionnellement parlant. Ce qui est plutôt un bon signe à vrai dire.</p>
<p>Bref ! Il y a quelques semaines déjà, j&#8217;ai développé une <strong>mise à jour du plugin Link To Post</strong>. Mais je ne l&#8217;avais pas encore mise sur le dépôt WordPress, ce qui est à présent chose faite.</p>
<p>Comme je sens que vous trépignez d&#8217;impatience, voici directement&#8230;</p>
<h2>&#8230;Les nouveautés</h2>
<p>1. Tout d&#8217;abord, et je commence par le moins intéressant pour vous, j&#8217;ai complètement <strong>réorganisé le code du plugin</strong>. Le résultat est beaucoup plus simple à maintenir et à traduire.</p>
<p>2. Ensuite, j&#8217;ai décidé de <strong>regrouper les différents éléments sur une même page</strong>. Dans l&#8217;ancienne version, vous aviez un bouton &laquo;&nbsp;link to post&nbsp;&raquo; pour les articles, et un &laquo;&nbsp;link to page&nbsp;&raquo; pour les pages. Désormais, vous aurez un seul et unique bouton &laquo;&nbsp;link to post&nbsp;&raquo; à partir duquel vous pourrez lier le type de contenu de votre choix.</p>
<p>3. Enfin, j&#8217;ai ajouté de nouveaux éléments à lier. En plus des articles et des pages, vous pouvez désormais <strong>faire des liens vers des catégories et des mot-clés</strong>. Cerise sur le gâteau, la configuration du plugin vous permet de définir quel onglet vous voulez ouvrir par défaut.</p>
<p><img class="aligncenter size-full wp-image-358 shadow" title="screenshot-2" src="http://julienappert.com/wordpress/wp-content/uploads/2010/06/screenshot-2.png" alt="" width="500" height="252" /></p>
<h2>Dans le futur</h2>
<p>A terme, j&#8217;envisage un peu plus de flexibilité pour ce plugin WordPress :</p>
<p>1. <strong>Vous pourrez choisir les onglets à afficher</strong>. Si vous voulez lier uniquement des pages, vous pourrez afficher l&#8217;onglet des pages et cacher les autres.</p>
<p>2. Surtout, le plus gros du travail consistera à vous permettre de <strong>définir vous-même un type de contenu à lier</strong>. Etant donné que la version 3.0 de WordPress permettra de créer plus facilement de nouveaux types de contenu, cette évolution du plugin me semble nécessaire. Mais&#8230; ça va demander un peu de travail, donc du temps. Ne vous attendez pas à ce que ça arrive la semaine prochaine !</p>
<p>En attendant, profitez bien de cette nouvelle version, et comme d&#8217;habitude, n&#8217;hésitez pas à faire remonter les bogues. Je tâcherais de les corriger le plus rapidement possible.</p>
<p><a class="downloadLink" href="http://wordpress.org/extend/plugins/link-to-post/">Link To Post 1.0</a></p>
<img src="http://feeds.feedburner.com/~r/JulienAppert/~4/3TC4h3VwfyI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://julienappert.com/link-to-post-nouveautes-pour-la-version-1-0.html/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		<feedburner:origLink>http://julienappert.com/link-to-post-nouveautes-pour-la-version-1-0.html</feedburner:origLink></item>
		<item>
		<title>Ne communiquez pas sur les plugins installés</title>
		<link>http://feedproxy.google.com/~r/JulienAppert/~3/IfRGwNNC9bk/ne-communiquez-pas-sur-les-plugins-installes.html</link>
		<comments>http://julienappert.com/ne-communiquez-pas-sur-les-plugins-installes.html#comments</comments>
		<pubDate>Thu, 11 Mar 2010 20:54:40 +0000</pubDate>
		<dc:creator>Julien Appert</dc:creator>
				<category><![CDATA[Plugins wordpress]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[faille]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[sécurité]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://julienappert.com/?p=347</guid>
		<description><![CDATA[Juste un court article en réaction au dernier billet de Thierry Roget, où il mentionne les plugins WordPress installés sur son blog. Pour ma part, j&#8217;aurais plutôt tendance à conseiller de ne pas communiquer à ce sujet. Pourtant, en tant que développeur de plugins, je dois bien vous l&#8217;avouer, j&#8217;apprécie quand un blogueur évoque un [...]]]></description>
			<content:encoded><![CDATA[<p>Juste un court article en réaction au <a href="http://roget.biz/les-plugins-wordpress-installes-sur-ce-blog" rel="nofollow">dernier billet de Thierry Roget</a>, où il mentionne les plugins WordPress installés sur son blog. Pour ma part, j&#8217;aurais plutôt tendance à conseiller de ne pas communiquer à ce sujet. Pourtant, en tant que développeur de plugins, je dois bien vous l&#8217;avouer, j&#8217;apprécie quand un blogueur évoque un de mes bébés. </p>
<p><strong>Alors pourquoi ce conseil qui va à l&#8217;encontre de mes intérêts ?</strong> Simplement pour que votre site ne soit pas piraté. Si WordPress corrige régulièrement ses failles, ce n&#8217;est pas forcément le cas de tous les développeurs de plugins. Nombre d&#8217;entre eux codent en dépit du bon sens et une bonne partie n&#8217;effectue plus de mise à jour depuis des années. Communiquer sur les plugins installés sur votre blog, c&#8217;est dire haut et fort à tous les hackers de la Terre : <strong>&laquo;&nbsp;vous voyez ce plugin plein de trous de sécurité ? Je l&#8217;ai installé, alors faites-vous plaisir surtout !&nbsp;&raquo;</strong></p>
<p>Voilà qui est dit. Mais surtout, que ça ne vous empêche pas de faire un petit billet de temps en temps sur <a href="http://julienappert.com/realisations" title="Réalisations">les incroyables plugins</a> que je mets à votre disposition <img src='http://julienappert.com/wordpress/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> .</p>
<img src="http://feeds.feedburner.com/~r/JulienAppert/~4/IfRGwNNC9bk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://julienappert.com/ne-communiquez-pas-sur-les-plugins-installes.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://julienappert.com/ne-communiquez-pas-sur-les-plugins-installes.html</feedburner:origLink></item>
		<item>
		<title>Optimiser WordPress, encore, toujours…</title>
		<link>http://feedproxy.google.com/~r/JulienAppert/~3/Ekt457xOC1c/optimiser-wordpress-encore-toujours.html</link>
		<comments>http://julienappert.com/optimiser-wordpress-encore-toujours.html#comments</comments>
		<pubDate>Thu, 11 Mar 2010 11:19:49 +0000</pubDate>
		<dc:creator>Julien Appert</dc:creator>
				<category><![CDATA[Trucs et astuces]]></category>
		<category><![CDATA[base de données]]></category>
		<category><![CDATA[optimisation]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[requête]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://julienappert.com/?p=341</guid>
		<description><![CDATA[J&#8217;ai déjà évoqué la question ici, il existe de nombreux moyens pour et, ainsi, gagner en performances. Aujourd&#8217;hui, je vais partager avec vous deux astuces, la première concernant votre base de données, et la seconde, moins essentielle, à propos de la sauvegarde des articles. Voir et analyser les requêtes effectuées Pour afficher une page, WordPress [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://julienappert.com/wordpress/wp-content/uploads/2010/03/wordpress-optimisation-bdd.jpg"><img class="aligncenter size-full wp-image-342 shadow" title="wordpress-optimisation-bdd" src="http://julienappert.com/wordpress/wp-content/uploads/2010/03/wordpress-optimisation-bdd.jpg" alt="" width="600" height="249" /></a></p>
<p>J&#8217;ai déjà évoqué la question ici, il existe de nombreux moyens pour <a href="http://julienappert.com/11-astuces-pour-optimiser-votre-wordpress.html" title="11 astuces pour optimiser votre WordPress">optimiser votre installation WordPress</a> et, ainsi, gagner en performances. Aujourd&#8217;hui, je vais partager avec vous deux astuces, la première concernant votre base de données, et la seconde, moins essentielle, à propos de la sauvegarde des articles.</p>
<h2>Voir et analyser les requêtes effectuées</h2>
<p>Pour afficher une page, WordPress doit effectuer un certain nombre de requêtes dans la base de données. Une partie de celles-ci est générée par WordPress lui-même, mais le thème utilisé va jouer un rôle important, c&#8217;est pourquoi<strong> il est recommandé de remplacer certains appels de fonction par des données en dur</strong>. Par exemple, remplacer <code>&lt;?php bloginfo('url'); ?&gt;</code> par <code>http://monsite.com</code>.</p>
<p>L&#8217;astuce que je vais vous donner vous permettra de voir précisément les requêtes effectuées pour chacune de vos pages. Ouvrez votre fichier <code>wp-config.php</code> et ajoutez-y le code suivant :</p>
<pre class="brush: php; title: ;">define('SAVEQUERIES', true);</pre>
<p>A partir de maintenant, toutes les requêtes seront sauvegardées dans une variable, ce qui aura une influence négative sur les performances. Aussi, activez cette ligne uniquement pour l&#8217;analyse, ne la gardez pas en permanence.</p>
<p>Maintenant, ouvrez le <code>footer.php</code> de votre thème et ajoutez les lignes suivantes avant la fermeture du <code>&lt;body&gt;</code> :</p>
<pre class="brush: php; title: ;">&lt;?php
if (current_user_can('administrator')){
 global $wpdb;
 echo &quot;&lt;pre&gt;&quot;;
 print_r($wpdb-&gt;queries);
 echo &quot;&lt;/pre&gt;&quot;;
}
?&gt;</pre>
<p>Une fois connecté en tant qu&#8217;administrateur, <strong>ce code affichera en bas de vos pages un tableau dont chacune des entrées détaillera : la requête exacte, le temps qu&#8217;elle a pris et l&#8217;arborescence des fonctions ayant provoqué cet appel</strong>. Testé ici-même, le code m&#8217;indique 28 requêtes pour la page d&#8217;accueil, et 42 pour un article<sup><a href="http://julienappert.com/optimiser-wordpress-encore-toujours.html#footnote_0_341" id="identifier_0_341" class="footnote-link footnote-identifier-link" title=" 42&amp;#8230; La r&eacute;ponse ultime &agrave; la grande question sur la vie, l&amp;#8217;univers et le reste">1</a></sup>. Ce qui est probablement perfectible&#8230;</p>
<h2>Se passer des sauvegardes automatiques</h2>
<p>Nous avons vu dans mon précédent article sur l&#8217;optimisation qu&#8217;il était possible de désactiver les révisions (<a href="http://julienappert.com/11-astuces-pour-optimiser-votre-wordpress.html" title="11 astuces pour optimiser votre WordPress">point 6</a>). Mais WordPress continue à effectuer des sauvegardes automatiques de vos articles en cours de rédaction. C&#8217;est très pratique, sauf lorsque vous créez du contenu en masse. Par exemple, dernièrement, il m&#8217;a fallu créer une arborescence d&#8217;une vingtaine de pages. La mécanique est simple et rapide : ajout du titre, choix de la page parent, et hop, j&#8217;enregistre. Sauf que ce dernier point est ralenti à cause de la sauvegarde automatique : je dois attendre la fin de son exécution pour publier. Frustrant, à la longue.</p>
<p>Pour ne plus avoir à affronter ce problème, deux solutions :</p>
<p>1. <strong>Modifier l&#8217;intervalle de sauvegarde automatique</strong>. Toujours dans le <code>wp-config.php</code>, ajoutez le code suivant :</p>
<pre class="brush: php; title: ;">define( 'AUTOSAVE_INTERVAL', 60 );</pre>
<p>Avec de la chance, vous aurez le temps de créer votre page et de l&#8217;enregistrer avant qu&#8217;une sauvegarde auto soit lancée.</p>
<p>2. <strong>Désactiver totalement la sauvegarde automatique</strong>. Là, il va falloir créer un plugin tout simple. Créez un fichier dans votre dossier <code>plugins</code>, nommez le, par exemple, <code>disable-autosave.php</code>, et insérez le contenu suivant :</p>
<pre class="brush: php; title: ;">&lt;?php
 /*
 Plugin Name: Disable Autosave
 */
 function disable_autosave() {
 wp_deregister_script('autosave');
 }
 add_action( 'wp_print_scripts', 'disable_autosave' );
 ?&gt;</pre>
<p>Grâce à ce plugin, le fichier javascript qui gère la sauvegarde auto ne sera plus appelé : vous en êtes libéré !</p>
<ol class="footnotes"><li id="footnote_0_341" class="footnote"> <a rel="nofollow" href="http://fr.wikipedia.org/wiki/La_grande_question_sur_la_vie,_l'univers_et_le_reste">42&#8230; La réponse ultime à la grande question sur la vie, l&#8217;univers et le reste</a></li></ol><img src="http://feeds.feedburner.com/~r/JulienAppert/~4/Ekt457xOC1c" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://julienappert.com/optimiser-wordpress-encore-toujours.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://julienappert.com/optimiser-wordpress-encore-toujours.html</feedburner:origLink></item>
	</channel>
</rss>

