<?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>La Case de l&#039;Oncle Tom &#187; png</title>
	<atom:link href="http://case.oncle-tom.net/tag/png/feed/" rel="self" type="application/rss+xml" />
	<link>http://case.oncle-tom.net</link>
	<description>Développement Web, bonnes pratiques et performances</description>
	<lastBuildDate>Sun, 25 Dec 2011 19:33:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<atom:link rel="search"
           href="http://case.oncle-tom.net/opensearch"
           type="application/opensearchdescription+xml"
           title="Content Search" />		<item>
		<title>Ménage de printemps</title>
		<link>http://case.oncle-tom.net/2009/menage-printemps/</link>
		<comments>http://case.oncle-tom.net/2009/menage-printemps/#comments</comments>
		<pubDate>Wed, 15 Apr 2009 18:06:59 +0000</pubDate>
		<dc:creator>Oncle Tom</dc:creator>
				<category><![CDATA[Développement Web]]></category>
		<category><![CDATA[Personnel]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[blueprint]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[css2]]></category>
		<category><![CDATA[css3]]></category>
		<category><![CDATA[feedburner]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[performances]]></category>
		<category><![CDATA[png]]></category>
		<category><![CDATA[webdesign]]></category>
		<category><![CDATA[yslow]]></category>
		<guid isPermaLink="false">http://case.oncle-tom.net/?p=1345</guid>
		<description><![CDATA[J'avais besoin de changer de thème graphique ! Découvrez les besoins, les critères d'exigence et de qualité. Je présente également la vie d'un intégrateur sans compatibilité avec Internet Explorer 6, mes déconvenues avec WP Cron et les manipulations de WordPress pour parvenir à mes fins.]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter size-thumbnail wp-image-1347" title="WordPress Logo" src="http://case.oncle-tom.net/images/2009/04/wordpress-badge-138x138.png" alt="WordPress Logo" width="138" height="138" /></p>
<p>Je me décide à passer un coup de peinture sur ce blog quasiment 2 ans après le <a href="http://case.oncle-tom.net/2007/08/15/css-summer-refresh-2007/"><acronym title="Cascading Style Sheets">CSS</acronym> Summer Refresh</a> organisé par <a href="http://alsacreations.com/">Alsacréations</a>. À vrai dire, j&#8217;avais ce projet dans les cartons depuis septembre 2008 mais le plus difficile a été de trouver le talent graphique. C&#8217;était également l&#8217;occasion de dire au revoir aux navigateurs Web de seconde zone, à savoir Internet Explorer 7 et moins.</p>
<p><span id="more-1345"></span></p>
<h3>Le besoin</h3>
<p>Mon besoin était le suivant :</p>
<ul>
<li><strong>Thème graphique</strong>
<ul>
<li>durable et peu lassant</li>
<li>usage de transparence</li>
<li>toujours sur des tons marrons</li>
<li>inspire la modernité tout comme le côté rustique et soucieux de la nature</li>
<li>structure en grille pour intégrer avec <a href="http://blueprintcss.org/">Blueprint</a></li>
</ul>
</li>
<li><strong>Fonctionnalités</strong>
<ul>
<li>intégration d&#8217;un <em>lifestream</em> (intégré entre temps)</li>
<li>intégration de <a href="http://feedburner.com/">Feedburner</a> via son <a href="http://code.google.com/intl/fr/apis/feedburner/awareness_api.html"><acronym title="Application Programming Interface">API</acronym> Awareness</a></li>
<li>intégration d&#8217;un bandeau <a href="http://flickr.com/">Flickr</a> qui s&#8217;étend sur toute la largeur de l&#8217;écran, peu importe la résolution employée</li>
<li>utilisation du blog comme vitrine : suppression de ma dernière page <acronym title="HyperText Markup Language">HTML</acronym> manuelle (autrefois accessible sur <a href="http://oncle-tom.net/">oncle-tom.net</a>)</li>
</ul>
</li>
<li><strong>Compatibilité</strong>
<ul>
<li>navigateurs modernes &#8230; c&#8217;est à dire rien en dessous d&#8217;Internet Explorer 8</li>
<li>intégration avec <acronym title="HyperText Markup Language">HTML</acronym> 5</li>
<li>pas d&#8217;utilisation de <acronym title="Graphics Interchange Format">GIF</acronym> mais de <acronym title="Portable Network Graphics">PNG</acronym> 6 et <acronym title="Portable Network Graphics">PNG</acronym> 24</li>
</ul>
</li>
<li><strong>Autre</strong>
<ul>
<li>soucis de performance (peu d&#8217;éléments graphiques, utilisation des <em>sprites</em>)</li>
</ul>
</li>
</ul>
<p>Finalement c&#8217;est <a href="http://leslyg.com/">Lesly</a> qui s&#8217;est chargé de la création graphique. Vous pouvez d&#8217;ailleurs consulter la <a href="http://leslyg.com/work/blog-de-thomas-parisot-oncle-tom/">maquette graphique originale sur son portfolio</a>. Quant à moi, j&#8217;ai réalisé toute l&#8217;intégration <acronym title="Cascading Style Sheets">CSS</acronym>/<acronym title="HyperText Markup Language">HTML</acronym> dans WordPress.</p>
<h3>L&#8217;intégration</h3>
<p>Tout d&#8217;abord, qu&#8217;est ce qui a changé par rapport à la maquette ?</p>
<ul>
<li><strong>les polices de caractère</strong> : hormis le titre, seules des polices standards ont été employées. J&#8217;attendrai le support des polices personnalisées en <acronym title="Cascading Style Sheets">CSS</acronym> 3 à moins de partir sur une solution à base de <acronym title="Scalable Vector Graphics">SVG</acronym> (encore que j&#8217;ai des doutes sur l&#8217;accessibilité d&#8217;une telle méthode) ;</li>
<li><strong>moins d&#8217;éléments graphiques</strong> : les punaises, les effets papiers ont été supprimés. Rien que le papier et le scotch de la partie &laquo;&nbsp;À propos&nbsp;&raquo; pesaient plus de 60Ko ;</li>
<li><strong>abandon temporaire du <em>featured content</em></strong> : les solutions actuelles étaient trop lourdes et j&#8217;étais trop impatient pour passer quelques heures de plus &#8230; donc c&#8217;est temporaire <img src='http://case.oncle-tom.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </li>
<li>l&#8217;<strong>ajout des pages en lieu et place du fil d&#8217;ariane</strong> : j&#8217;en avais besoin pour présenter différents contenus statiques ;</li>
<li><strong>le pied de page</strong> : peu de widgets WordPress offrent un degré de personnalisation suffisant pour arriver à ce résultat. C&#8217;est donc temporisé là aussi en attendant de trouver chaussure à mon pied <img src='http://case.oncle-tom.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </li>
</ul>
<div id="attachment_1346" class="wp-caption aligncenter" style="width: 160px"><a href="/images/2009/04/caseoncle-tomnet-oncletom-wood.png"><img class="size-medium wp-image-1346" title="caseoncle-tomnet-oncletom-wood" src="http://case.oncle-tom.net/images/2009/04/caseoncle-tomnet-oncletom-wood-150x300.png" alt="Aperçu pleine page" width="150" height="300" /></a><p class="wp-caption-text">Aperçu pleine page</p></div>
<p>Pour le reste je me suis fait plaisir avec notamment l&#8217;utilisation de coins arrondis (<em>border-radius</em>) basés sur les implémentations de Gecko et Webkit. Désolé pour les utilisateurs d&#8217;autres navigateurs car j&#8217;en ai usé et abusé afin d&#8217;éviter l&#8217;utilisation d&#8217;images.</p>
<p>J&#8217;ai également joué avec l&#8217;<strong><acronym title="Application Programming Interface">API</acronym> de WordPress</strong> pour générer les vignettes des articles. Je sais bien qu&#8217;on peut définir des tailles d&#8217;images mais ça ne vaut que pour les médias nouvellement mis en ligne. J&#8217;en ai profité pour n&#8217;afficher dans le listing que l&#8217;extrait du billet. Pas l&#8217;intro, seulement l&#8217;extrait (<em>excerpt</em>). J&#8217;ai lu récemment un article qui parlait de la chose et ça m&#8217;a paru plus approprié. Je peux désormais écrire le texte qui me convient pour attirer la lecture vers un article sans pour autant que ça ait de répercution sur son contenu une fois affiché en pleine page.</p>
<p>Je suis en revanche toujours dubitatif sur l&#8217;<acronym title="Application Programming Interface">API</acronym> de <acronym title="WordPress">WP</acronym> Cron : ma tâche a beau être enregistrée et planifiée, j&#8217;ai l&#8217;impression qu&#8217;elle ne s&#8217;exécute jamais &#8230; contrairement aux recherches de mises à jour de plugins &amp; cie. <span style="text-decoration: line-through;">Quelqu&#8217;un a déjà joué avec et rencontré pareil problème ?</span><br />
<strong>Mise à jour</strong> : j&#8217;ai résolu le problème et détaillé la marche à suivre dans l&#8217;article <a href="http://case.oncle-tom.net/2009/05/14/affichage-personnalise-abonnes-feedburner/">affichage personnalisé de ses lecteurs Feedburner</a>. Je planifiais une fonction et non un <em>hook</em>. Cela fonctionnait mais ne produisait fatalement pas de résultat <img src='http://case.oncle-tom.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Au final je n&#8217;ai même pas eu à placer la moindre ligne de JavaScript : tout est fait à partir de sélecteurs <acronym title="Cascading Style Sheets">CSS</acronym>. Mon seul regret : l&#8217;absence de sélecteur adjacent &#8230; &laquo;&nbsp;précédent&nbsp;&raquo;. Pour le menu du haut, je voulais pouvoir styler les éléments de menus ayant comme élément suivant une liste d&#8217;élément (<code>&lt;ul&gt;</code>).</p>
<h3>Au final</h3>
<p>J&#8217;ai mis à peu près 2 jours pour tout intégrer et optimiser. Je n&#8217;ai pas encore tenté l&#8217;optimisation à coup de <acronym title="Portable Network Graphics">PNG</acronym> 8 grâce aux quelques Ko gagnés avec <a href="http://pmt.sourceforge.net/pngcrush/">pngcrush</a>. Il faudrait également que je réunisse quelques images dans un seul et même sprite pour gagner encore quelques dizièmes de seconde en temps de chargement.</p>
<div id="attachment_1349" class="wp-caption aligncenter" style="width: 414px"><img class="size-full wp-image-1349" title="Rapport YSlow" src="http://case.oncle-tom.net/images/2009/04/caseoncle-tomnet-yslow.png" alt="Rapport YSlow" width="404" height="398" /><p class="wp-caption-text">Rapport YSlow</p></div>
<p>J&#8217;en ai profité pour tester l&#8217;utilisation de <em>mod_expires</em> et <em>mod_gzip</em> chez OVH en mutualisé (avant de tout migrer sur serveur dédié) : ça marche plutôt très bien. Si ça vous intéresse, je peux en faire un billet dédié. D&#8217;ici là, n&#8217;hésitez pas à bouquiner <a href="http://case.oncle-tom.net/2008/07/15/high-performance-web-sites/">High Performances Web Sites</a> qui reste une référence en la matière. J&#8217;attends d&#8217;ailleurs sa suite avec impatience : <em>Even Faster Web Sites: Essential Knowledge for Frontend Engineers</em>.</p>
<p>Quoiqu&#8217;il en soit, le fait d&#8217;avoir eu la pleine utilisation des sélecteurs <acronym title="Cascading Style Sheets">CSS</acronym> a été géniale : la vie est grandement facilitée. <em>inline-block</em> évite de nombreuses bidouilles à base de flottants. J&#8217;ai hâte qu&#8217;une version de <em>Blueprint</em> sorte en se basant uniquement sur les sélecteurs avancés et non des flottants pour disposer de mises en forme plus complexes tout en étant facile d&#8217;accès.</p>
<p>Si vous rencontrez des problèmes, surtout n&#8217;hésitez pas à les signaler, par le <a href="#respond">biais des commentaires</a> ou par <a href="/contact/">email</a> <img src='http://case.oncle-tom.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>En attendant, je retourne sur mon <a href="http://case.oncle-tom.net/2009/02/24/faire-part-de-naissance/">projet éprouvant du moment</a> !</p>]]></content:encoded>
			<wfw:commentRss>http://case.oncle-tom.net/2009/menage-printemps/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
		</item>
	</channel>
</rss>

