<?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"
	>

<channel>
	<title>Iptima</title>
	<atom:link href="http://www.iptima.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.iptima.com</link>
	<description>... un site consacré aux Technologies de l'Information et de la Communication et à WordPress</description>
	<pubDate>Fri, 31 Oct 2008 07:10:56 +0000</pubDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<language>en</language>
			<item>
		<title>[Memo] 000webhost, un hébergeur performant et gratuit</title>
		<link>http://www.iptima.com/2008/08/24/memo-000webhost-un-hebergeur-performant-et-gratuit/</link>
		<comments>http://www.iptima.com/2008/08/24/memo-000webhost-un-hebergeur-performant-et-gratuit/#comments</comments>
		<pubDate>Sun, 24 Aug 2008 17:14:27 +0000</pubDate>
		<dc:creator>Vincent Roulet</dc:creator>
		
		<category><![CDATA[Conception]]></category>

		<category><![CDATA[WordPress]]></category>

		<category><![CDATA[000webhost]]></category>

		<category><![CDATA[b2evolution]]></category>

		<category><![CDATA[Drupal]]></category>

		<category><![CDATA[File Transfert Protocol]]></category>

		<category><![CDATA[Ftp]]></category>

		<category><![CDATA[hébergeur]]></category>

		<category><![CDATA[Hypertext Preprocessor]]></category>

		<category><![CDATA[Joomla]]></category>

		<category><![CDATA[MySql]]></category>

		<category><![CDATA[Nucleus]]></category>

		<category><![CDATA[Php]]></category>

		<category><![CDATA[Sgc]]></category>

		<category><![CDATA[Sql]]></category>

		<category><![CDATA[Standard Query Language]]></category>

		<category><![CDATA[Système de Gestion de Contenu]]></category>

		<category><![CDATA[Typo3]]></category>

		<guid isPermaLink="false">http://www.iptima.com/?p=228</guid>
		<description><![CDATA[Avec 000webhost, nous pensons avoir trouvé l&#8217;hébergeur idéal&#160;:

350 Mega-octets d&#8217;espace disque,
100 Giga-octets de bande passante,
Php et MySql en version 5,
activation immédiate du compte, y compris de l&#8217;accès Ftp et de la base MySql,
hébergement en nom de domaine, ou en sous domaine avec une adresse comme http://chezmoi.site40.net,
installation en un clic des plates-formes de weblogue (WordPress, Nucleus, [...]]]></description>
			<content:encoded><![CDATA[<div class="announcement_post"><p>Avec <a href="http://www.000webhost.com/69994.html" onclick="window.open(this.href); return false;" title="aller sur le site de 000webhost (s'ouvre dans une nouvelle fenêtre)">000webhost</a>, nous pensons avoir trouvé l&#8217;hébergeur idéal&#160;:</p>
<ul>
<li>350 Mega-octets d&#8217;espace disque,</li>
<li>100 Giga-octets de bande passante,</li>
<li><acronym title="pre-hypertext processing">Php</acronym> et MySql en version 5,</li>
<li>activation immédiate du compte, y compris de l&#8217;accès <acronym title="file transfert protocol">Ftp</acronym> et de la base MySql,</li>
<li>hébergement en nom de domaine, ou en sous domaine avec une adresse comme <em>http://chezmoi.site40.net</em>,</li>
<li>installation en un clic des plates-formes de weblogue (<em>WordPress</em>, <em>Nucleus</em>, <em>b2evolution</em>&#8230;), de <acronym title="système de gestion de contenu (content management system - cms - en anglais)">Sgc</acronym> (<em>Drupal</em>, <em>Joomla</em>, <em>Typo3</em>&#8230;) <em>et cetera</em> pour les moins chevronnés,</li>
<li>haute disponibilité,</li>
<li>sans publicité,</li>
<li>serveur de mel,</li>
<li>gratuit.</li>
</ul>
<p><span id="more-228"></span></p>
<p>Autrement dit, ce service propose l&#8217;ensemble des fonctionnalités d&#8217;un hébergeur classique, mais il est gratuit. Le modèle économique repose sur les dons et, essentiellement, sur les souscriptions payantes à des services supplémentaires.  </p>
<p>Les serveurs sont situés aux États-Unis d&#8217;Amérique, mais les temps de réponse sont comparables à ceux d&#8217;un hébergeur situé (au hasard&#8230;) en Allemagne&#160;!</p>
<p>L&#8217;assistance technique est limitée à un forum de discussion, mais semble aussi réactive que les <em>hotliners</em> des hébergements classiques à l&#8217;entendement parfois limité.</p>
<p>Cette offre est idéale pour débutants, par exemple sous <em>WordPress</em>&#160;: plutôt qu&#8217;installer une version du weblogue en <em>local</em> au risque de ne pas savoir exporter la base de données avec la mise en production, il est plus utile d&#8217;utiliser un serveur dès ses premiers pas. </p>
<p>Sont parfois à déplorer certaines <em>sautes</em> du serveur, qui durent le plus souvent quelques secondes. Cet écueil n&#8217;est guère gênant pour les sites amateurs.</p>
<p>Désormais, nous ne connaissons plus d&#8217;erreur <em>500</em> sur nos sites ni de problème d&#8217;allocation de mémoire <acronym title="pre-hypertext processing">Php</acronym>. Notre vie de concepteur de sites a changé grâce à <a href="http://www.000webhost.com/69994.html" onclick="window.open(this.href); return false;" title="aller sur le site de 000webhost (s'ouvre dans une nouvelle fenêtre)">000webhost</a>&#160;!</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.iptima.com/2008/08/24/memo-000webhost-un-hebergeur-performant-et-gratuit/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Page d&#8217;accueil statique de WordPress, comment renvoyer vers les articles&#160;?</title>
		<link>http://www.iptima.com/2008/10/29/page-daccueil-statique-de-wordpress-comment-renvoyer-vers-les-articles/</link>
		<comments>http://www.iptima.com/2008/10/29/page-daccueil-statique-de-wordpress-comment-renvoyer-vers-les-articles/#comments</comments>
		<pubDate>Wed, 29 Oct 2008 10:50:26 +0000</pubDate>
		<dc:creator>Vincent Roulet</dc:creator>
		
		<category><![CDATA[WordPress]]></category>

		<category><![CDATA[interface d'administration]]></category>

		<guid isPermaLink="false">http://www.iptima.com/?p=272</guid>
		<description><![CDATA[La caractéristique est rarement utilisée mais il est possible de remplacer la page d&#8217;accueil de WordPress, qui affiche traditionnellement les derniers articles, par une page statique dans les options de lecture. En voulant utiliser cet affichage, nous avons été perplexe&#160;: comment renvoyer vers les articles&#160;? Certes, le menu déroulant permet de préciser une page, mais [...]]]></description>
			<content:encoded><![CDATA[<p>La caractéristique est rarement utilisée mais il est possible de remplacer la page d&#8217;accueil de <em>WordPress</em>, qui affiche traditionnellement les derniers articles, par une page statique dans les options de lecture. En voulant utiliser cet affichage, nous avons été perplexe&#160;: comment renvoyer vers les articles&#160;? Certes, le menu déroulant permet de préciser une page, mais encore faut-il qu&#8217;elle existe&#160;! Sur ce point, cette procédure ne nous semble guère intuitive&#8230; Après avoir parcouru en vain plusieurs minutes durant les pages (toujours instructives&#160;!) du <em>Codex</em> anglophone, la solution a surgi dans notre esprit embrumé&#8230; Créer une page <em>vide</em> à intituler <em>Articles</em>, qu&#8217;il suffit ensuite de sélectionner dans le menu déroulant de <em>Page des articles</em>&#160;! Enfin, précision sans doute superfétatoire,  il faut évidemment afficher le lien sur la page d&#8217;accueil.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.iptima.com/2008/10/29/page-daccueil-statique-de-wordpress-comment-renvoyer-vers-les-articles/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Désactiver le suivi des versions de WordPress</title>
		<link>http://www.iptima.com/2008/10/29/desactiver-le-suivi-des-versions-de-wordpress/</link>
		<comments>http://www.iptima.com/2008/10/29/desactiver-le-suivi-des-versions-de-wordpress/#comments</comments>
		<pubDate>Wed, 29 Oct 2008 10:30:57 +0000</pubDate>
		<dc:creator>Vincent Roulet</dc:creator>
		
		<category><![CDATA[Notes de lecture]]></category>

		<category><![CDATA[WordPress]]></category>

		<category><![CDATA[administration de WordPress]]></category>

		<category><![CDATA[Hypertext Preprocessor]]></category>

		<category><![CDATA[MySql]]></category>

		<category><![CDATA[Php]]></category>

		<category><![CDATA[Standard Query Language]]></category>

		<guid isPermaLink="false">http://www.iptima.com/?p=271</guid>
		<description><![CDATA[Korben explique sur son weblogue comment désactiver le suivi des versions de WordPress en modifiant le fichier wp-config.php, après pure préalable de la base de données. Thomas revient sur ce propos en donnant la procédure détaillée pour nettoyer en profondeur les tables. Il est certain que cette fonctionnalité de WordPress est inutile lorsqu&#8217;on est seul [...]]]></description>
			<content:encoded><![CDATA[<p>Korben explique sur son <a href="http://www.korben.info/comment-desactiver-le-suivi-des-versions-sous-wordpress-26.html" onclick="window.open(this.href); return false;" title="lire l'article de Korben sur la désactivation des suivi de versions de WordPress(s'ouvre dans une nouvelle fenêtre)">weblogue</a> comment désactiver le suivi des versions de <em>WordPress</em> en modifiant le fichier <em>wp-config.php</em>, après pure préalable de la base de données. Thomas revient sur ce propos en donnant la <a href="http://blog.newbie-project.net/2008/10/30/astuce-wp-donnez-un-bon-coup-de-balai-a-votre-bdd.html" onclick="window.open(this.href); return false;" title="lire l'article de Thomas sur la nettoyage en profondeur des tables de WordPress(s'ouvre dans une nouvelle fenêtre)">procédure</a> détaillée pour nettoyer en profondeur les tables. Il est certain que cette fonctionnalité de <em>WordPress</em> est inutile lorsqu&#8217;on est seul rédacteur et alourdit inutilement le contenu de la table <em>wp_posts</em>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.iptima.com/2008/10/29/desactiver-le-suivi-des-versions-de-wordpress/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Les listes en Html</title>
		<link>http://www.iptima.com/2008/10/28/les-listes-en-html/</link>
		<comments>http://www.iptima.com/2008/10/28/les-listes-en-html/#comments</comments>
		<pubDate>Tue, 28 Oct 2008 10:34:24 +0000</pubDate>
		<dc:creator>Vincent Roulet</dc:creator>
		
		<category><![CDATA[Conception]]></category>

		<category><![CDATA[balises]]></category>

		<category><![CDATA[Extensible HyperText Markup Language]]></category>

		<category><![CDATA[Html]]></category>

		<category><![CDATA[HyperText Markup Language]]></category>

		<category><![CDATA[listes]]></category>

		<category><![CDATA[typographie]]></category>

		<category><![CDATA[Xhtml]]></category>

		<guid isPermaLink="false">http://www.iptima.com/?p=267</guid>
		<description><![CDATA[Plutôt que recourir à des tirets, Html ou Xhtml permet de gérer harmonieusement les listes. Ainsi, la présentation est améliorée, et les listes prennent une valeur sémantique. On distingue trois catégories&#160;:

les listes non-ordonnées,
les listes ordonnées,
les listes de définitions.


Les balises utilisées dans les listes ont les significations suivantes dans la langue de Shakespeare&#160;:

ul
Unordered Lists
ol
Ordered Lists
li
List items
dl
Definition [...]]]></description>
			<content:encoded><![CDATA[<p>Plutôt que recourir à des tirets, <acronym title="hypertext markup language">Html</acronym> ou <acronym title="extensible hypertext markup language">Xhtml</acronym> permet de gérer harmonieusement les listes. Ainsi, la présentation est améliorée, et les listes prennent une valeur sémantique. On distingue trois catégories&#160;:</p>
<ul>
<li>les listes non-ordonnées,</li>
<li>les listes ordonnées,</li>
<li>les listes de définitions.</li>
</ul>
<p><span id="more-267"></span></p>
<p>Les balises utilisées dans les listes ont les significations suivantes dans la langue de Shakespeare&#160;:</p>
<dl>
<dt>ul</dt>
<dd>Unordered Lists</dd>
<dt>ol</dt>
<dd>Ordered Lists</dd>
<dt>li</dt>
<dd>List items</dd>
<dt>dl</dt>
<dd>Definition Lists</dd>
<dt>dt</dt>
<dd>Definition Term</dd>
<dt>dl</dt>
<dd>Definition Description</dd>
</dl>
<p>Les listes ordonnées permettent une énumération simple. Les listes ordonnées appliquent un chiffre devant chaque <em>item</em>. Contrairement à leur nom, les listes de définition peuvent être aussi utilisées pour relier des élements entre eux.</p>
<p>Les listes débutent toujours le conteneur <strong>&#60;ul&#62;</strong> et finissent par <strong>&#60;/ul&#62;</strong> pour une liste non-ordonnée ou <strong>&#60;ol&#62;</strong> et <strong>&#60;/ol&#62;</strong>pour une liste ordonnée. À l&#8217;intérieur, on utilise les balises <strong>&#60;li&#62;</strong> et <strong>&#60;/li&#62;</strong> . Les listes de définition se comportent différemment.</p>
<h3>Les listes ordonnées</h3>
<p>Exemple&#8230;</p>
<p><code>&#60;ul&#62;<br />
	&#60;li&#62;papier,&#60;/li&#62;<br />
	&#60;li&#62;ciseaux,&#60;/li&#62;<br />
	&#60;li&#62;cailloux.&#60;/li&#62;<br />
&#60;/ul&#62;</code></p>
<p>Affichera&#8230;</p>
<ul>
<li>papier,</li>
<li>ciseaux,</li>
<li>cailloux.</li>
</ul>
<p>La feuille de style gère le retrait du paragraphe et l&#8217;aspect de la puce.</p>
<h3>Les listes non-ordonnées</h3>
<p>Exemple&#8230;</p>
<p><code>&#60;ol&#62;<br />
	&#60;li&#62;papier,&#60;/li&#62;<br />
	&#60;li&#62;ciseaux,&#60;/li&#62;<br />
	&#60;li&#62;cailloux.&#60;/li&#62;<br />
&#60;/ol&#62;</code></p>
<p>Affichera&#8230;</p>
<ol>
<li>papier,</li>
<li>ciseaux,</li>
<li>cailloux.</li>
</ol>
<p>La feuille de style gère le retrait de paragraphe et l&#8217;aspect de la numérotation. Pour des raisons esthétiques, on peut supprimer la numérotation et afficher <em>normalement</em> le texte. Pour autant, cette liste numérotée conserva sa valeur sémantique&#160;!</p>
<h4>Imbrication de listes</h4>
<p>Il est possible d&#8217;imbriquer des listes à l&#8217;infini pour des raisons logiques.</p>
<p>Exemple&#8230;</p>
<p><code>&#60;ul&#62;<br />
&#60;li&#62;Aquitaine<br />
&#60;ul&#62;<br />
&#60;li&#62;Dordogne,&#60;/li&#62;<br />
&#60;li&#62;Gironde,&#60;/li&#62;<br />
&#60;li&#62;Landes,&#60;/li&#62;<br />
&#60;li&#62;Lot-et-Garonne,&#60;/li&#62;<br />
&#60;li&#62;Pyrénées-Atlantiques.&#60;/li&#62;<br />
&#60;/ul&#62;<br />
&#60;/li&#62;<br />
&#60;li&#62;Languedoc-Roussillon<br />
&#60;ul&#62;<br />
&#60;li&#62;Aude,&#60;/li&#62;<br />
&#60;li&#62;Gard,&#60;/li&#62;<br />
&#60;li&#62;Hérault,&#60;/li&#62;<br />
&#60;li&#62;Lozère,&#60;/li&#62;<br />
&#60;li&#62;Pyrénées-Orientales.&#60;/li&#62;<br />
&#60;/ul&#62;<br />
&#60;/li&#62;<br />
&#60;/ul&#62;</code></p>
<p>Affichera&#8230;</p>
<ul>
<li>Aquitaine
<ul>
<li>Dordogne,</li>
<li>Gironde,</li>
<li>Landes,</li>
<li>Lot-et-Garonne,</li>
<li>Pyrénées-Atlantiques.</li>
</ul>
</li>
<li>Languedoc-Roussillon
<ul>
<li>Aude,</li>
<li>Gard,</li>
<li>Hérault,</li>
<li>Lozère,</li>
<li>Pyrénées-Orientales.</li>
</ul>
</li>
</ul>
<p>Pour simplifier la gestion des balises, la méthode consiste à indenter le code, car le risque d&#8217;erreur est grand.</p>
<p>De même, peut-on placer entre <strong>&#60;li&#62;</strong> et <strong>&#60;/li&#62;</strong> des paragraphes, des images&#8230;</p>
<p>Exemple&#8230;</p>
<p><code>&#60;ul&#62;<br />
&#60;li&#62;Papiers<br />
&#60;p&#62;<br />
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed non risus. Suspendisse lectus tortor, dignissim sit amet, adipiscing nec, ultricies sed, dolor. Cras elementum ultrices diam. Maecenas ligula massa, varius a, semper congue, euismod non, mi.<br />
&#60;/p&#62;<br />
&#60;/li&#62;<br />
&#60;li&#62;Ciseaux&#60;/li&#62;<br />
&#60;li&#62;Cailloux&#60;/li&#62;<br />
&#60;/ul&#62;</code></p>
<p>Affichera</p>
<ul>
<li>Papiers
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed non risus. Suspendisse lectus tortor, dignissim sit amet, adipiscing nec, ultricies sed, dolor. Cras elementum ultrices diam. Maecenas ligula massa, varius a, semper congue, euismod non, mi.</p>
</li>
<li>Ciseaux</li>
<li>Cailloux</li>
</ul>
<h3>Listes de définition</h3>
<p>Les listes de définition débutent toujours le conteneur <strong>&#60;dl&#62;</strong> et finissent par <strong>&#60;/dl&#62;</strong>. À l&#8217;ntérieur, on utilise les balises <strong>&#60;dt&#62;</strong> et <strong>&#60;/dt&#62;</strong> qui indique le terme à définir, puis <strong>&#60;dd&#62;</strong> et <strong>&#60;/dd&#62;</strong> pour donner la définition.</p>
<p>Dans une même listes de définitions, il peut y avoir plusieurs balises <strong>&#60;dt&#62;</strong> et <strong>&#60;/dt&#62;</strong> et plusieurs balises <strong>&#60;dd&#62; </strong>et <strong>&#60;/dd&#62;</strong>  qui peuvent être mélangées, <strong>mais</strong> évidemment une seule balise <strong>&#60;dl&#62;</strong> et <strong>&#60;/dl&#62;</strong>.</p>
<p>Par exemple, pour définir les mois de janvier et de février, on écrira&#8230;</p>
<p><code>&#60;dl&#62;<br />
&#60;dt&#62;Janvier&#60;/dt&#62;<br />
&#60;dd&#62;Premier mois de l'année.&#60;/dd&#62;<br />
&#60;dt&#62;Février&#60;/dt&#62;<br />
&#60;dd&#62;Deuxième mois de l'année.&#60;/dd&#62;<br />
&#60;/dl&#62;</code></p>
<p>Qui affichera</p>
<dl>
<dt>Janvier</dt>
<dd>Premier mois de l&#8217;année.</dd>
<dt>Février</dt>
<dd>Deuxième mois de l&#8217;année.</dd>
</dl>
<p>L&#8217;affichage des listes de définition est différent entre <acronym title="mozilla firefox">Firefox</acronym> et <acronym title="microsoft internet explorer">Msie</acronym>. Le premier navigateur reconnaît notamment la propriété <em>dd:before</em> dans une feuille de style.</p>
<p>Les listes de définition peuvent avoir un usage varié. Imaginons que nous soyons écrivain&#160;; nous voulons informer les lecteurs de nos séances de dédicace. Nous pourrions écrire au <em>kilomètre</em>&#8230;</p>
<p><em>Jeudi 21 août 2008, de 17 h 00 à 18 h 30, présentation puis dédicace d&#8217;«&#160;En quête&#160;» de lecteurs à la Bibliothèque Municipale et, à partir de 18 h 30, à la Librairie Alphabétique de Bordeaux (Gironde).</em></p>
<p>En réorganisant et en factorisant l&#8217;information (c&#8217;est l&#8217;un des défis les plus intéressants d&#8217;<acronym title="extensible hypertext markup language">Xhtml</acronym> selon nous&#160;!), nous pourrions recourir à la présentation suivante&#8230;</p>
<p><code>&#60;dl&#62;<br />
&#60;dt&#62;Jeudi 21 août 2008&#60;/dt&#62;<br />
&#60;dd&#62;Bordeaux (Gironde)&#60;/dd&#62;<br />
&#60;dt&#62;de 17 h 00 à 18 h 30&#60;/dt&#62;<br />
&#60;dd&#62;Bibliothèque Municipale&#60;/dd&#62;<br />
&#60;dt&#62;de 18 h 30 à 19 h 00&#60;/dt&#62;<br />
&#60;dd&#62;Librairie Alphabétique&#60;/dd&#62;<br />
&#60;dd&#62;Présentation puis dédicace d&#60;strong&#62;&#60;em&#62;« En Quête » de lecteurs&#60;/em&#62;&#60;/strong&#62;.&#60;/dd&#62;<br />
&#60;/dl&#62;</code></p>
<p>Qui affichera&#8230;</p>
<dl>
<dt>Jeudi 21 août 2008</dt>
<dd>Bordeaux (Gironde)</dd>
<dt>de 17 h 00 à 18 h 30</dt>
<dd>Bibliothèque Municipale</dd>
<dt>de 18 h 30 à 19 h 00</dt>
<dd>Librairie Alphabétique</dd>
<dd>Présentation puis dédicace d&#8217;<strong><em>«&#160;En Quête&#160;» de lecteurs</em></strong>.</dd>
</dl>
<p>De la même façon, nous pourrions nous servir d&#8217;une liste de définition pour présenter les commentaires (forcément élogieux&#160;!) de lecteurs sur notre ouvrage. Nous indiquerions comme <em>termes</em> l&#8217;identité du lecteur puis la date de l&#8217;avis, la <em>description</em> correspondant au libellé du commentaire.</p>
<p>Au-delà d&#8217;une présentation plus aérée, les moteurs de recherche référenceront mieux l&#8217;information présentée ainsi.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.iptima.com/2008/10/28/les-listes-en-html/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Gérer correctement les images avec WordPress 2.5</title>
		<link>http://www.iptima.com/2008/08/25/gerer-correctement-les-images-avec-wordpress-25/</link>
		<comments>http://www.iptima.com/2008/08/25/gerer-correctement-les-images-avec-wordpress-25/#comments</comments>
		<pubDate>Mon, 25 Aug 2008 09:14:14 +0000</pubDate>
		<dc:creator>Vincent Roulet</dc:creator>
		
		<category><![CDATA[Conception]]></category>

		<category><![CDATA[WordPress]]></category>

		<category><![CDATA[Cascading Style Sheets]]></category>

		<category><![CDATA[Cleaner WordPress Gallery]]></category>

		<category><![CDATA[Css]]></category>

		<category><![CDATA[Extensible HyperText Markup Language]]></category>

		<category><![CDATA[Image Manager]]></category>

		<category><![CDATA[images]]></category>

		<category><![CDATA[Ligthbox]]></category>

		<category><![CDATA[NextGen Gallery]]></category>

		<category><![CDATA[Slimbox]]></category>

		<category><![CDATA[Xhtml Strict]]></category>

		<guid isPermaLink="false">http://www.iptima.com/?p=178</guid>
		<description><![CDATA[WordPress propose depuis le version 2.5 d&#8217;ajouter aisément des media à ses articles, en particulier des images. L&#8217;interface d&#8217;édition est prometteuse, mais force est de reconnaître que les résultats sont décevants après publication.

Lors de nos débuts avec WordPress, nous avions essayé divers plugicels, comme Image Manager ou Nextgen Gallery, mais ces solutions semblaient lourdes à [...]]]></description>
			<content:encoded><![CDATA[<p><em>WordPress</em> propose depuis le version 2.5 d&#8217;ajouter <em>aisément</em> des <em>media</em> à ses articles, en particulier des images. L&#8217;interface d&#8217;édition est prometteuse, mais force est de reconnaître que les résultats sont décevants après publication.</p>
<p><span id="more-178"></span></p>
<p>Lors de nos débuts avec <em>WordPress</em>, nous avions essayé divers plugicels, comme <em>Image Manager</em> ou <em>Nextgen Gallery</em>, mais ces solutions semblaient lourdes à mettre en œuvre au quotidien. Aussi avions-nous décidé de nous passer d&#8217;images dans nos articles, d&#8217;autant que la production de photographies est coûteuse&#8230; à moins de les voler&#160;!</p>
<p>Or, voilà quelques jours, nous avons décidé de réaliser pour une amie photographe amateur un <em>photblog</em> sous <em>WordPress</em>. Comme nous détestons la facilité (!), nous avons décidé de ne pas recourir à une solution <em>prête à l&#8217;emploi</em>&#8230; Nous ne mesurions pas l&#8217;ampleur de la tâche&#160;!</p>
<p>Nous ne nous appesantirons pas ici sur la mise au point, somme toute complexe, du thème. En revanche, nous détaillerons comment gérer spécifiquement les images dans un thème. Le processus passe par&#160;:</p>
<ul>
<li>la modification de la feuille de style,</li>
<li>l&#8217;ajout de fichiers spécifiques au thème pour gérer</li>
<li>l&#8217;ajout d&#8217;une extension pour gérer correctement, sur le plan de l&#8217;affichage comme de la sémantique, les galeries,</li>
<li>la syntaxe permettant de gérer les images.</li>
</ul>
<h3>Modification de la feuille de style</h3>
<p>Le code permettant de gérer l&#8217;affichage des images dans un thème est largement diffusé. Pour mémoire, la syntaxe <em>standard</em> à incorporer dans la feuille de style est&#160;:</p>
<p><code>/*-------------Images-----------------*/<br />
p img {<br />
	padding: 0;<br />
	max-width: 100%;<br />
}<br />
img.centered {<br />
	display: block;<br />
	margin-left: auto;<br />
	margin-right: auto;<br />
}<br />
img.alignright {<br />
	padding: 4px;<br />
	margin: 0 0 2px 7px;<br />
	display: inline;<br />
}<br />
img.alignleft {<br />
	padding: 4px;<br />
	margin: 0 7px 2px 0;<br />
	display: inline;<br />
}<br />
.alignright {<br />
	float: right;<br />
}<br />
.alignleft {<br />
	float: left;<br />
}<br />
/* Begin Images */<br />
p img {<br />
	padding: 0;<br />
	max-width: 100%;<br />
}<br />
img.centered {<br />
	display: block;<br />
	margin-left: auto;<br />
	margin-right: auto;<br />
}<br />
img.alignright {<br />
	padding: 4px;<br />
	margin: 0 0 2px 7px;<br />
	display: inline;<br />
}<br />
img.alignleft {<br />
	padding: 4px;<br />
	margin: 0 7px 2px 0;<br />
	display: inline;<br />
}<br />
.alignright {<br />
	float: right;<br />
}<br />
.alignleft {<br />
	float: left;<br />
}<br />
/* End Images */<br />
/* Captions */<br />
.aligncenter, div.aligncenter {<br />
	display: block;<br />
	margin-left: auto;<br />
	margin-right: auto;<br />
}<br />
.wp-caption {<br />
	border: 1px solid #ddd;<br />
	text-align: center;<br />
	background-color: #f3f3f3;<br />
	color: #000;/**/<br />
	padding-top: 4px;<br />
	margin: 10px;<br />
	-moz-border-radius: 3px;<br />
	-khtml-border-radius: 3px;<br />
	-webkit-border-radius: 3px;<br />
	border-radius: 3px;<br />
}<br />
.wp-caption img {<br />
	margin: 0;<br />
	padding: 0;<br />
	border: 0 none;<br />
}<br />
.wp-caption p.wp-caption-text {<br />
	font-size: 11px;<br />
	line-height: 17px;<br />
	padding: 0 4px 5px;<br />
	margin: 0;<br />
}<br />
/* End captions */</code></p>
<p>En dépit de ce formatage, nous nous retrouvions avec un bogue&#160;: lorsque l&#8217;image d&#8217;un article était située après le texte, avec un alignement à gauche ou à droite, elle chevauchait les <em>méta données</em> gérées par la classe <em>postemetada</em> ainsi que l&#8217;article suivant. <em>Eurêka</em>&#160;! Il suffisait d&#8217;appliquer un <em>spacer</em>, doté de la propriété <em>clear</em>, pour empêcher l&#8217;image d&#8217;être adjacente. En d&#8217;autres termes, il fallait écrire&#160;:</p>
<p><code>.postmetadata {<br />
	clear: both;<br />
}</code></p>
<h3>Ajout de fichiers spécifiques</h3>
<p>Trois fichiers permettent de gérer les images dans un thème&#160;:</p>
<ul>
<li><em>image.php</em>.</li>
<li><em>attachment.php</em>,</li>
<li><em>index.php</em>.</li>
</ul>
<p>Dans la <a hreflang="en" href="http://codex.wordpress.org/Template_Hierarchy" onclick="window.open(this.href); return false;" title="consulter la page du Codex (s'ouvre dans une nouvelle fenêtre)">hiérarchie des modèles</a>, <em>WordPress</em> va d&#8217;abord utiliser <em>image.php</em>, puis <em>attachment.php</em> et enfin <em>index.php</em>.</p>
<p>Faute d&#8217;avoir trouvé la documentation nécessaire, y compris en anglais, nous sommes parti de la dernière version de <em>Kubrick</em> pour ajouter et personnaliser les deux fichiers en fonction des caractéristiques de notre thème.&#160;: cette opération est plus fastidieuse que complexe et nous ne la détaillerons pas.</p>
<p>Emmanuel Gorgeon a écrit un <a href="http://www.emmanuelgeorjon.com/wordpress-attachments-107/" onclick="window.open(this.href); return false;" title="lire l'article WordPress et les pièces jointes (s'ouvre dans une nouvelle fenêtre)">article</a> théorique fort intéressant sur la gestion des pièces jointes par <em>WordPress</em>.</p>
<p>Dans le fichier <em>functions.php</em> du thème, on peut limiter la taille des images à téléverser avec cette syntaxe&#160;:</p>
<p><code>&#60;?php<br />
// Uploads<br />
&#36GLOBALS['content_width'] = 640;<br />
?&#62;</code></p>
<h3>Ajouts d&#8217;une extension pour gérer une galerie</h3>
<p>Nous nous sommes ensuite intéressé à l&#8217;ajout d&#8217;une galerie d&#8217;images dans un article&#8230; Nous avons été surpris&#160;: <em>WordPress</em> se présente comme un <acronym title="système de gestion de contenu (content management system - cms - en anglais)">Sgc</acronym> nativement respectueux des standards, mais l&#8217;affichage d&#8217;une galerie rend la page non valide <acronym title="extensible hypertext markup language">Xhtml</acronym> Strict&#160;! </p>
<p>Cependant, nous avons déniché une extension écrite par le célèbre Justin Tadlock, <a hreflang="en" href="http://justintadlock.com/archives/2008/04/13/cleaner-wordpress-gallery-plugin" onclick="window.open(this.href); return false;" title="aller sur le site du plugin Cleaner WordPress Gallery (s'ouvre dans un nouvelle fenêtre)">Cleaner WordPress Gallery Plugin</a>. Ce plugiciel, d&#8217;une taille colossale de 3 Kilo-octets (!),  permet d&#8217;afficher une galerie <acronym title="extensible hypertext markup language">Xhtml</acronym> Strict et d&#8217;ajouter un effet <em>Lightbox</em> (ou <em>Slimbox</em>) à ces images.</p>
<p>Il est surprenant que cette fonctionnalité ne soit pas incluse dans <em>WordPress</em> par défaut.</p>
<h3>Syntaxe pour gérer les images</h3>
<p>Il existe une syntaxe spécifique pour gérer les images, sous forme de code abrégée (<em>shortcode</em> pour les anglicistes&#160;!), comme l&#8217;enseigne le <a hreflang="en" href="http://codex.wordpress.org/Using_the_gallery_shortcode" onclick="window.open(this.href); return false;" title="consulter la page du Codex (s'ouvre dans un nouvelle fenêtre)">Codex</a>. Les exemples présentés sont nombreux et devraient convenir aux novices comme aux chevronnés.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.iptima.com/2008/08/25/gerer-correctement-les-images-avec-wordpress-25/feed/</wfw:commentRss>
		</item>
		<item>
		<title>La fonction «&#160;get_settings&#160;» de WordPress est dépréciée&#160;!</title>
		<link>http://www.iptima.com/2008/08/23/la-fonction-%c2%ab-get_settings-%c2%bb-de-wordpress-est-depreciee/</link>
		<comments>http://www.iptima.com/2008/08/23/la-fonction-%c2%ab-get_settings-%c2%bb-de-wordpress-est-depreciee/#comments</comments>
		<pubDate>Sat, 23 Aug 2008 18:00:03 +0000</pubDate>
		<dc:creator>Vincent Roulet</dc:creator>
		
		<category><![CDATA[WordPress]]></category>

		<category><![CDATA[get_option]]></category>

		<category><![CDATA[get_settings]]></category>

		<category><![CDATA[thèmes]]></category>

		<guid isPermaLink="false">http://www.iptima.com/?p=221</guid>
		<description><![CDATA[Concepteur de thèmes, attention&#160;! la fonction get_settings est dépréciée. Il convient à présent d&#8217;utiliser à la place la fonction get_option, comme l&#8217;indique le Codex. Il vaut mieux tenir à jour ses thèmes pour se simplifier le travail de maintenance.
]]></description>
			<content:encoded><![CDATA[<p>Concepteur de thèmes, attention&#160;! la fonction <em>get_settings</em> est dépréciée. Il convient à présent d&#8217;utiliser à la place la fonction <em>get_option</em>, comme l&#8217;indique le <a hreflang="en" href="http://codex.wordpress.org/Function_Reference/get_settings" onclick="window.open(this.href); return false;" title="consulter la page du Codex (s'ouvre dans un nouvelle fenêtre)">Codex</a>. Il vaut mieux tenir à jour ses thèmes pour se simplifier le travail de maintenance.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.iptima.com/2008/08/23/la-fonction-%c2%ab-get_settings-%c2%bb-de-wordpress-est-depreciee/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Accéder aux options de WordPress depuis l&#8217;interface d&#8217;administration</title>
		<link>http://www.iptima.com/2008/08/23/acceder-aux-options-de-wordpress-depuis-linterface-dadministration/</link>
		<comments>http://www.iptima.com/2008/08/23/acceder-aux-options-de-wordpress-depuis-linterface-dadministration/#comments</comments>
		<pubDate>Sat, 23 Aug 2008 17:34:56 +0000</pubDate>
		<dc:creator>Vincent Roulet</dc:creator>
		
		<category><![CDATA[WordPress]]></category>

		<category><![CDATA[administration de WordPress]]></category>

		<category><![CDATA[Hypertext Preprocessor]]></category>

		<category><![CDATA[MySql]]></category>

		<category><![CDATA[Php]]></category>

		<category><![CDATA[Sql]]></category>

		<category><![CDATA[Standard Query Language]]></category>

		<guid isPermaLink="false">http://www.iptima.com/?p=213</guid>
		<description><![CDATA[Pour accéder aux options de WordPress, il suffit de taper l&#8217;adresse http://www.site.com/wp-admin/options.php. L&#8217;équivalent de la table wp_options s&#8217;affiche, et elle permet de modifier d&#8217;un clic de souris les caractéristiques de son weblogue. Curieusement, ce lien n&#8217;est pas disponible en clair depuis l&#8217;interface d&#8217;administration de WordPress&#160;!
]]></description>
			<content:encoded><![CDATA[<p>Pour accéder aux options de WordPress, il suffit de taper l&#8217;adresse <em>http://www.site.com/wp-admin/options.php</em>. L&#8217;équivalent de la table <em>wp_options</em> s&#8217;affiche, et elle permet de modifier d&#8217;un clic de souris les caractéristiques de son weblogue. Curieusement, ce lien n&#8217;est pas disponible <em>en clair</em> depuis l&#8217;interface d&#8217;administration de <em>WordPress</em>&#160;!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.iptima.com/2008/08/23/acceder-aux-options-de-wordpress-depuis-linterface-dadministration/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Activer le correcteur orthographique de WordPress en français par défaut</title>
		<link>http://www.iptima.com/2008/08/22/activer-le-correcteur-orthographique-de-wordpress-en-francais-par-defaut/</link>
		<comments>http://www.iptima.com/2008/08/22/activer-le-correcteur-orthographique-de-wordpress-en-francais-par-defaut/#comments</comments>
		<pubDate>Fri, 22 Aug 2008 14:42:13 +0000</pubDate>
		<dc:creator>Vincent Roulet</dc:creator>
		
		<category><![CDATA[WordPress]]></category>

		<category><![CDATA[commentaires]]></category>

		<category><![CDATA[correcteur d'orthographe]]></category>

		<category><![CDATA[extensions]]></category>

		<category><![CDATA[File Transfert Protocol]]></category>

		<category><![CDATA[francisation]]></category>

		<category><![CDATA[Ftp]]></category>

		<category><![CDATA[internationalisation]]></category>

		<category><![CDATA[javaScrip]]></category>

		<category><![CDATA[MCe Comments]]></category>

		<category><![CDATA[plugiciels]]></category>

		<category><![CDATA[Plugins]]></category>

		<category><![CDATA[TinyMce]]></category>

		<category><![CDATA[Transfert Protocol]]></category>

		<guid isPermaLink="false">http://www.iptima.com/?p=186</guid>
		<description><![CDATA[Pendant longtemps, nous avons utilisé WordPress, sans utiliser son correcteur orthographique. Cependant, nous avons prévu d&#8217;ouvrir un site, qui permettrait aux lecteurs d&#8217;écrire leurs propres articles. Dès lors, nous devions fournir une interface précise et conviviale.

De même, voulons-nous utiliser l&#8217;extension l&#8217;extension MCE Comments, qui propose une interface enrichie pour les commentaires des visiteurs. Internationalisation oblige, [...]]]></description>
			<content:encoded><![CDATA[<p>Pendant longtemps, nous avons utilisé <em>WordPress</em>, sans utiliser son correcteur orthographique. Cependant, nous avons prévu d&#8217;ouvrir un site, qui permettrait aux lecteurs d&#8217;écrire leurs propres articles. Dès lors, nous devions fournir une interface précise et conviviale.</p>
<p><span id="more-186"></span></p>
<p>De même, voulons-nous utiliser l&#8217;extension l&#8217;extension <strong>MCE Comments</strong>, qui propose une interface enrichie pour les commentaires des visiteurs. Internationalisation oblige, le correcteur d&#8217;orthographe activé par défaut pour la langue de Shakespeare.</p>
<p>Or, comme l&#8217;indique un <a href="http://www.wordpress-fr.net/support/sujet-15139-resolu-bravo-correcteurs-orthographe-francais" onclick="window.open(this.href); return false;" title="consulter la question du support francophone de WordPress (s'ouvre dans cette fenêtre)">débat</a> non résolu récent sur le support francophone de <em>WordPress</em>, le correcteur d&#8217;orthographe de <em>WordPress</em> corrige par défaut la langue anglaise&#160;: comment y remédier&#160;?</p>
<p>La solution que nous allons présenté ici fonctionne avec la version 2.6.1 de <em>WordPress</em>. Nous ne sommes pas partisan des modifications en <em>dur</em> des fichiers de <em>WordPress</em>, mais parfois <em>nécessité fait loi</em>&#160;!</p>
<p>Les fichiers à modifier sont&#160;:</p>
<ul>
<li><em>../wp-includes/js/tinymce/tiny-mce-config.php</em>,</li>
<li><em>../wp-includes/js/tinymce/plugins/spellchecker/editor-plugin.js</em>.</li>
</ul>
<h3>Modifications à apporter dans <em>tiny_mce_config.php</em></h3>
<p>Dans <em>tiny_mce_config.php</em>, il convient de remplacer ligne no 67&#8230;</p>
<p><code>&#36;mce_spellchecker_languages =<br />
apply_filters('mce_spellchecker_languages','+English=en,Danish=da,<br />
Dutch=nl,Finnish=fi,French=fr,German=de,Italian=it,<br />
Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv');</code></p>
<p>par</p>
<p><code>&#36;mce_spellchecker_languages =<br />
apply_filters('mce_spellchecker_languages','English=en,Danish=da,<br />
Dutch=nl,Finnish=fi,+French=fr,German=de,Italian=it,<br />
Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv');</code></p>
<p>Autrement dit, il suffit juste de déplacer le symbole <em>+</em> devant <em>French=FR</em>.</p>
<p>Ces deux fichiers sont à remplacer dans l&#8217;installation de <em>WordPress</em> par <acronym title="file transfert protocol">Ftp</acronym>.</p>
<h3>Modifications à apporter dans <em>editor-plugin.js</em></h3>
<p>Dans <em>editor-plugin.js</em>, il convient de remplacer lignes no 78 et suivantes&#8230;</p>
<p><code>each(ed.getParam('spellchecker_languages', '+English=en,Danish=da,<br />
Dutch=nl,Finnish=fi,French=fr, German=de,Italian=it,<br />
Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv',<br />
'hash'), function(v, k) {<br />
if (k.indexOf('+') === 0) {<br />
k = k.substring(1);<br />
t.selectedLang = v;<br />
}<br />
t.languages[k] = v;<br />
});</code></p>
<p>par</p>
<p><code>each(ed.getParam('spellchecker_languages','English=en,Danish=da,<br />
Dutch=nl,Finnish=fi,+French=fr,German=de,Italian=it,<br />
Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv',<br />
'hash'), function(v, k) {<br />
if (k.indexOf('+') === 0) {<br />
k = k.substring(1);<br />
t.selectedLang = v;<br />
}<br />
t.languages[k] = v;<br />
});</code></p>
<p>Là encore, il suffit juste de déplacer le symbole <em>+</em> devant <em>French=FR</em>.</p>
<h3>Modifications à apporter dans l&#8217;extension <em>TinyMce Comments</em></h3>
<p>Dans <em>TinyMCEComments.php</em>, il suffit de remplacer la ligne 215&#8230;</p>
<p><code>&#36;mcecomment_options['language'] = 'en';</code></p>
<p>par</p>
<p><code>&#36;mcecomment_options['language'] = 'fr';</code></p>
<p>c&#8217;est-à-dire <em>en</em> par <em>fr</em>.</p>
<p>Ensuite, et pour être parfaitement exhaustif afin de satisfaire Jean-Yves (!), il faut transférer le fichier par <acronym title="file transfert protocol">Ftp</acronym>, à moins d&#8217;effectuer la modification depuis l&#8217;éditeur d&#8217;extension de <em>WordPress</em>.</p>
<p>Si ces modifications sont faciles, il reste cependant un défaut auquel nous n&#8217;avons pas remédier. Le correcteur d&#8217;orthographe propose parfois certains équivalents accentués dans des caractères étranges, dont l&#8217;encodage n&#8217;est pas conforme.</p>
<p>Enfin, la traduction française sur l&#8217;icône du <em>Spellchecker</em> laisse à désirer. L&#8217;équipe française de traduction a pris le parti récemment de culbuter les apostrophes, qui ne sont pas correctement prises en charge par JavaScript&#160;! (On retrouve le même écueil dans l&#8217;ajout d&#8217;image). Pour obtenir un résultat optimal, il convient donc aussi de remanier la traduction française.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.iptima.com/2008/08/22/activer-le-correcteur-orthographique-de-wordpress-en-francais-par-defaut/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Changer d&#8217;hébergeur Web sans interruption de service</title>
		<link>http://www.iptima.com/2008/08/22/changer-dhebergeur-web-sans-interruption-de-service/</link>
		<comments>http://www.iptima.com/2008/08/22/changer-dhebergeur-web-sans-interruption-de-service/#comments</comments>
		<pubDate>Fri, 22 Aug 2008 09:09:32 +0000</pubDate>
		<dc:creator>Vincent Roulet</dc:creator>
		
		<category><![CDATA[Conception]]></category>

		<category><![CDATA[Notes de lecture]]></category>

		<category><![CDATA[Dns]]></category>

		<category><![CDATA[Domain Name System]]></category>

		<category><![CDATA[hébergeur]]></category>

		<category><![CDATA[Internet Protocol]]></category>

		<category><![CDATA[Ip]]></category>

		<category><![CDATA[MySql]]></category>

		<category><![CDATA[registar]]></category>

		<category><![CDATA[Sql]]></category>

		<category><![CDATA[Standard Query Language]]></category>

		<category><![CDATA[Tld]]></category>

		<category><![CDATA[Top Level Domains]]></category>

		<category><![CDATA[Traceroute]]></category>

		<guid isPermaLink="false">http://www.iptima.com/?p=179</guid>
		<description><![CDATA[Mécontent de notre hébergeur (dénis de service parfois prolongés sur nos sites et autres dysfonctionnements dûs à un serveur mutualisé à saturation&#8230;), nous avons songé à transférer nos données vers un nouveau prestataire. Or, nous redoutions la coupure temporaire de nos sites (peut-être avions-nous mal cerné situer le problème&#160;!)&#160;: le changement d&#8217;hébergeur contraint à changer [...]]]></description>
			<content:encoded><![CDATA[<p>Mécontent de notre hébergeur (dénis de service parfois prolongés sur nos sites et autres dysfonctionnements dûs à un serveur mutualisé à saturation&#8230;), nous avons songé à transférer nos données vers un nouveau prestataire. Or, nous redoutions la coupure temporaire de nos sites (peut-être avions-nous mal cerné situer le problème&#160;!)&#160;: le changement d&#8217;hébergeur contraint à changer les adresses <acronym title="domain name system">Dns</acronym>, qui mettent en entre 24 et 48 heures en théorie (ce délai de prudence est peut-être motivé par des raisons juridiques&#8230;) pour se propager pour que les serveurs de noms locaux prennent en compte la modification.</p>
<p><span id="more-179"></span></p>
<p>Pour contourner l&#8217;interruption de service en cas de changement d&#8217;hébergeur, quelques scripts sont disponibles, mais nous n&#8217;avions nullement envie d&#8217;investir du temps en <em>bidouillage</em>. Une solution pérenne et fiable nous semblait préférable.</p>
<p>Aussi avons-nous tenu le raisonnement suivant&#8230; Si nous copions nos données vers un hébergeur B en les laissant intact sur l&#8217;hébergeur A, nos sites ne devraient pas connaître d&#8217;interruption de service. Les serveurs de noms locaux qui auront pris en compte la modification vers B dirigeront les visiteurs vers B&#160;; les serveurs de noms locaux qui n&#8217;auront pas pris en compte la modification vers B dirigeront les visiteurs vers A.</p>
<p>Se pose, certes, la question du transfert par <acronym title="file transfert protocol">Ftp</acronym> du contenu vers le nouvel hébergeur, tant que l&#8217;adresse n&#8217;est pas résolue&#160;: au lieu d&#8217;utiliser l&#8217;adresse <em>ftp.monsite.com</em>, il suffit d&#8217;indiquer à titre temporaire l&#8217;adresse <acronym title="internet protocol">Ip</acronym> indiquée par l&#8217;hébergeur.</p>
<p>Pour l&#8217;anecdote, nous avons changé d&#8217;hébergeur trois sites, durant la journée du 21 août 2008, entre 15 h 00 et 20 h 00. (Pour les amateurs de géographie, l&#8217;ancien serveur était situé à Karlsruhe, en Allemagne, le nouveau à Las Vegas, aux États-Unis d&#8217;Amérique.) Deux possédaient la <acronym title="top level domains">Tld</acronym> <em>.info</em>, l&#8217;autre la <acronym title="top level domains">Tld</acronym> <em>.com</em>. (La précision est donnée, car il semble que la vitesse de propagation des <acronym title="domain name system">Dns</acronym> soit différente selon l&#8217;extension.) Nous avons utilisé l&#8217;outil réseau <em>Traceroute</em> pour mesurer le temps pris par le changement d&#8217;hébergeur après déclaration des nouvelles directions <acronym title="domain name system">Dns</acronym> auprès de notre <em>Registar</em>&#160;:</p>
<ul>
<li>notre premier site en <em>.info</em> a demandé trois heures pour être correctement redirigé,</li>
<li>notre deuxième site en <em>.com</em> a demandé deux heures pour être correctement redirigé,</li>
<li>notre troisième site en <em>.info</em> a demandé deux heures pour être correctement redirigé.</li>
</ul>
<p>(<em>Nota</em>. Ces mesures n&#8217;ont assurément aucune valeur, hormis informative&#160;!)</p>
<p>Nous sommes loin des 24 à 48 heures prévues&#160;; cette hypothèse nous conforte dans l&#8217;idée que nous avions mal appréhendé la question.</p>
<p>Sur le plan chronologique, nous avons effectué la migration dans l&#8217;ordre suivant&#160;:</p>
<ul>
<li>copie de nos répertoires et de nos pages par <acronym title="file transfert protocol">Ftp</acronym>;</li>
<li>copie de nos bases de données <acronym title="standard query language">Sql</acronym> <em>via</em> <em>phpMyAdmin</em>&#160;;</li>
<li>déclaration des nouvelles directions <acronym title="domain name system">Dns</acronym> auprès de notre <em>Registar</em>.</li>
</ul>
<p>(Sous <em>WordPress</em>, aucune réinstallation n&#8217;a été nécessaire.)</p>
<p>Nous avons choisi de ne pas modifier le contenu de nos sites pendant quelques heures pour simplifier la gestion de la procédure (le problème serait fort différent pour un vendeur en ligne&#160;!). Aucune donnée n&#8217;a été perdue, hormis quelques <em>logs</em> de connexion des visiteurs récupérés <em>manuellement</em> chez l&#8217;ancien hébergeur.</p>
<p>L&#8217;unique contrainte de l&#8217;opération consiste à disposer des services de son ancien hébergeur, pendant quelques jours.</p>
<p>En vérifiant le positionnement de l&#8217;article dans les moteurs de recherche, nous venons de nous apercevoir que Francis avait commis un <a href="http://www.fran6art.com/wordpress/wordpress-reussir-son-changement-dhebergement-en-7-etapes/" onclick="window.open(this.href); return false;" title="lire l'article réussir son changement d'hébergeur en sept étapes  (s'ouvre dans une nouvelle fenêtre)">article</a> similaire, concernant <em>WordPress</em>&#160;!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.iptima.com/2008/08/22/changer-dhebergeur-web-sans-interruption-de-service/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ajouter des «&#160;Widgets&#160;» à un thème WordPress</title>
		<link>http://www.iptima.com/2008/08/19/ajouter-des-%c2%ab-widgets-%c2%bb-a-un-theme-wordpress/</link>
		<comments>http://www.iptima.com/2008/08/19/ajouter-des-%c2%ab-widgets-%c2%bb-a-un-theme-wordpress/#comments</comments>
		<pubDate>Tue, 19 Aug 2008 17:55:40 +0000</pubDate>
		<dc:creator>Vincent Roulet</dc:creator>
		
		<category><![CDATA[Conception]]></category>

		<category><![CDATA[WordPress]]></category>

		<category><![CDATA[Cascading Style Sheets]]></category>

		<category><![CDATA[Css]]></category>

		<category><![CDATA[Extensible HyperText Markup Language]]></category>

		<category><![CDATA[feuilles de style]]></category>

		<category><![CDATA[Html]]></category>

		<category><![CDATA[HyperText Markup Language]]></category>

		<category><![CDATA[Hypertext Preprocessor]]></category>

		<category><![CDATA[Php]]></category>

		<category><![CDATA[Widgets]]></category>

		<category><![CDATA[Xhtml]]></category>

		<guid isPermaLink="false">http://www.iptima.com/?p=152</guid>
		<description><![CDATA[Dans WordPress, il est désormais possible d&#8217;ajouter des Widgets dans quatre zones&#160;:

l&#8217;en-tête,
le contenu,
la colonne latérale,
le pied de page.


Le nombre de zones n&#8217;est pas limité&#160;: on peut très bien imaginer un thème avec deux colonnes latérales de Widgets et un pied de page avec trois zones de Widgets&#160;!
La plupart des thèmes disponibles se contente de proposer [...]]]></description>
			<content:encoded><![CDATA[<p>Dans <em>WordPress</em>, il est désormais possible d&#8217;ajouter des <em>Widgets</em> dans quatre zones&#160;:</p>
<ul>
<li>l&#8217;en-tête,</li>
<li>le contenu,</li>
<li>la colonne latérale,</li>
<li>le pied de page.</li>
</ul>
<p><span id="more-152"></span></p>
<p>Le nombre de zones n&#8217;est pas limité&#160;: on peut très bien imaginer un thème avec deux colonnes latérales de <em>Widgets</em> et un pied de page avec trois zones de <em>Widgets</em>&#160;!</p>
<p>La plupart des thèmes disponibles se contente de proposer une ou plusieurs colonnes latérales <em>Widget Ready</em>. Or, pour des raisons esthétiques ou de séméiologie (!), on peut vouloir afficher <em>WordPress</em> sur une colonne, avec les informations complémentaires dans le pied de page.</p>
<p>Nous allons donc voir ici, à travers quelques codes simples que nous avons développés (nous préfèrerons ici la pratique à la théorie, car <em>c&#8217;est en forgeant qu&#8217;on devient forgeron</em>), comment ajouter des <em>Widgets</em> à un thème dans une colonne ou dans un pied de page. Leur adaptation demandera un minimum d&#8217;effort, nous en sommes persuadé&#8230;</p>
<p>Dans notre premier thème, nous nous contenterons d&#8217;afficher une deuxième colonne latérale dans le corps de la page affichant des <em>Widgets</em>&#160;; dans le deuxième, nous créerons un pied de page développé, qui comprendra trois zones de <em>Widgets</em>. </p>
<p>Précisions au préalable que la <em>widgetization</em> d&#8217;un thème demande la modification de trois fichiers&#160;:</p>
<ul>
<li>le fichier <em>functions.php</em>,</li>
<li>la feuille de style que nous appellerons par commodité <em>styles.css</em>,</li>
<li>le fichier de destination, <em>sidebar.php</em> ou <em>footer.php</em>, selon la zone de destination des <em>widgets</em> dans nos exemples présentés ici.</li>
</ul>
<h3>Le fichier <em>functions.php</em></h3>
<p>Le fichier <em>functions.php</em> comportera l&#8217;instruction suivante pour notre thème à la deuxième colonne&#160;:</p>
<p><code>&#60;?php<br />
if ( function_exists('register_sidebar') )<br />
register_sidebar(array('name'=&#62;'barre',<br />
        'before_widget' =&#62; '&#60;div id=&#34;%1&#36;s&#34; class=&#34;widget_sidebar %2&#36;s&#34;&#62;',<br />
        'after_widget' =&#62; '&#60;/div&#62;',<br />
        'before_title' =&#62; '&#60;h2 class=&#34;widgettitle&#34;&#62;',<br />
        'after_title' =&#62; '&#60;/h2&#62;',<br />
 ));<br />
 ?&#62;</code></p>
<p>Ici, <em>sidebar</em> a été utilisé au singulier, car nous demandons la création d&#8217;une seule zone. </p>
<p>Pour notre pied de page développé, nous écrirons&#160;:</p>
<p><code>&#60;?php<br />
if ( function_exists('register_sidebar') )<br />
register_sidebars(3,array(<br />
	'before_widget' =&#62; '&#60;div id=&#34;%1&#36;s&#34; class=&#34;widget_sidebar %2&#36;s&#34;&#62;',<br />
	'after_widget' =&#62; '&#60;/div&#62;',<br />
	'before_title' =&#62; '&#60;h2 class=&#34;widgettitle&#34;&#62;',<br />
	'after_title' =&#62; '&#60;/h2&#62;',<br />
 ));</code></p>
<p>Ici, la déclaration est la même que précédemment, à l&#8217;exception du chiffre <strong>3</strong> qui précise le nombre de <em>Sidebars</em> attendu et de l&#8217;ajout de la marque du <strong>pluriel</strong> à <em>sidebar</em>.</p>
<p>Cette solution présente un inconvénient ergonomique&#160;: aucun nom ne sera donné à la zone, au risque de créer une confusion dans l&#8217;esprit de l&#8217;utilisateur. Aussi vaut-il mieux déclarer un par un chaque <em>widget</em>, en leur attribuant un nom significatif&#160;: par exemple, <em>pied_gauche</em>, <em>pied_centre</em> et <em>pied_droit</em>.</p>
<h3>Le fichier <em>style.css</em></h3>
<p>Après avoir déclaré les <em>Widgets</em> et le formatage attendu, nous pouvons les styliser dans le fichier <em>style.css</em> comme suit dans notre thème à la colonne&#160;:</p>
<p><code>#sidebar {<br />
	width: 320px;<br />
	float: left;<br />
	margin: 0 0 0 20px;<br />
	padding: 0<br />
}<br />
#sidebar ul {<br />
	margin-bottom: 20px;<br />
}<br />
#sidebar a {<br />
	color: #000;<br />
}<br />
.widget_sidebar {<br />
	width: 320px;<br />
	display: block;<br />
	float: left;<br />
	margin: 0 0 5px 0;<br />
	padding: 0;<br />
	font-size:1em;<br />
}<br />
.widget_sidebar h1, .widget_sidebar h2, .widget_sidebar h3 {<br />
	color: #fff;<br />
	background: #ffe6e6;<br />
	padding : 2px 0px 2px 5px;<br />
	margin: 0;<br />
	border-top: 1px solid #000;<br />
	border-bottom: 1px solid #000;<br />
}<br />
.widget_sidebar ul h2 {<br />
	padding-bottom: 10px;<br />
	border-bottom: dashed 1px #000;<br />
	font-size: 1.5em;<br />
}<br />
.widget_sidebar ul li {<br />
	list-style: none;<br />
	line-height: 1.6em;<br />
	font-size: 1.1em;<br />
	border-bottom: dashed 1px #000;<br />
}<br />
.widget_sidebar ul ul li {<br />
	border-bottom: dashed 1px #000;<br />
}<br />
#sidebar a:hover {<br />
	text-decoration: underline;<br />
}<br />
.widget_sidebar p {<br />
	padding: 10px;<br />
	text-align: center;<br />
	font-size: 1em;<br />
}<br />
/*--------------Widgets--------------*/<br />
li.widget h2 {<br />
	color: #000;<br />
}<br />
/*-------------Calendar-----------------*/<br />
#wp-calendar {<br />
	width: 180px;<br />
	text-align: left;<br />
	margin-top: 5px;<br />
}<br />
#wp-calendar th {<br />
	margin-top: 5px;<br />
}<br />
#wp-calendar caption {<br />
	font-size: 1.2em;<br />
	margin-top: 5px;<br />
}</code></p>
<p>Pour le pied de page, nous le styliserons ainsi&#8230;</p>
<p><code>#footer_sidebar {<br />
	padding-top: 25px;<br />
	display: block;<br />
	margin-left: 25px;<br />
	margin-right: 25px;<br />
	height: 260px;<br />
}<br />
#footer_sidebar_1 {<br />
	float: left;<br />
	width: 180px;<br />
	margin-right: 25px;<br />
}<br />
#footer_sidebar_2 {<br />
	float: left;<br />
	width: 180px;<br />
	margin-right: 25px;<br />
}<br />
#footer_sidebar_3 {<br />
	float: left;<br />
	width: 180px;<br />
}<br />
#footer ul {<br />
	margin-bottom: 20px;<br />
}<br />
.widget_sidebar h1, .widget_sidebar h2, .widget_sidebar h3 {<br />
	color: #000;<br />
	padding: 2px 0px 2px 0px;<br />
	margin: 0;<br />
	border-top: 1px solid #000;<br />
	border-bottom: 1px solid #000;<br />
	text-align: center;<br />
}<br />
.widget_sidebar ul h2 {<br />
	padding-bottom: 10px;<br />
	border-bottom: dashed 1px #000;<br />
	font-size: 1.5em;<br />
}<br />
.widget_sidebar ul li {<br />
	list-style: none;<br />
	line-height: 1.6em;<br />
	font-size: 1.1em;<br />
	border-bottom: dashed 1px #000;<br />
}<br />
.widget_sidebar ul ul li {<br />
	border-bottom: dashed 1px #000;<br />
}<br />
#sidebar a:hover {<br />
	text-decoration: underline;<br />
}<br />
.widget_sidebar p {<br />
	color: #000;<br />
	padding: 10px;<br />
	text-align: center;<br />
	font-size: 1em;<br />
}<br />
/*--------------Widgets--------------*/<br />
li.widget h2 {<br />
	color: #000;<br />
}<br />
/*-------------Calendar-----------------*/<br />
#wp-calendar {<br />
	width: 180px;<br />
	text-align: left;<br />
	margin-top: 5px;<br />
}<br />
#wp-calendar th {<br />
	margin-top: 5px;<br />
}<br />
#wp-calendar caption {<br />
	font-size: 1.2em;<br />
	margin-top: 5px;<br />
}</code></p>
<p>(<em>Nota</em>. Pour les exemples, nous nous sommes contenté de la couleur noire, qui n&#8217;affichera pas grand&#8217;chose&#160;!)</p>
<h3>Déclaration des <em>Widgets</em> dans les fichiers de destination</h3>
<p>Enfin, il reste à déclarer les <em>Widgets</em> dans la colonne de notre premier thème. Il suffit d&#8217;ajouter à notre fichier <em>sidebar.php</em> la déclaration&#8230;<br />
<code>&#60;?php<br />
if ( !function_exists('dynamic_sidebar')<br />
|| !dynamic_sidebar(1) ) : ?&#62;<br />
&#60;?php endif; ?&#62;</code></p>
<p>Pour notre fichier <em>footer.php</em> du deuxième thème, l&#8217;instruction sera&#160;:</p>
<p><code>&#60;div id=&#34;footer_sidebar&#34;&#62;<br />
&#60;div id=&#34;footer_sidebar_1&#34;&#62;<br />
&#60;?php if ( !function_exists('dynamic_sidebar')<br />
|| !dynamic_sidebar(1) ) : ?&#62;<br />
&#60;?php endif; ?&#62;<br />
&#60;/div&#62;<br />
&#60;div id=&#34;footer_sidebar_2&#34;&#62;<br />
&#60;?php if ( !function_exists('dynamic_sidebar')<br />
|| !dynamic_sidebar(2) ) : ?&#62;<br />
&#60;?php endif; ?&#62;<br />
&#60;/div&#62;<br />
&#60;div id=&#34;footer_sidebar_3&#34;&#62;<br />
&#60;?php if ( !function_exists('dynamic_sidebar')<br />
|| !dynamic_sidebar(3) ) : ?&#62;<br />
&#60;?php endif; ?&#62;<br />
&#60;/div&#62;<br />
&#60;/div&#62;<br />
</code></p>
<p>Traditionnellement, cette déclaration est placée en tête du fichier, le restant étant laissé vide. Néanmoins, il est possible de coder <em>en dur</em> certains éléments, et d&#8217;ajouter la déclaration à la suite. Ainsi, l&#8217;ajout de <em>Widgets</em> dans l&#8217;interface d&#8217;administration de <em>WordPress</em> n&#8217;affectera pas le codage.</p>
<p>À l&#8217;usage, nous avons noté un dysfonctionnement. Si trois zones de <em>widgets</em> sont prévues dans le pied de page à gauche, au centre et à droite, la zone centrale ne peut être laissée vide&#160;: sinon, les <em>Widgets</em> placés dans la zone de droite occupent le centre. Pour obvier à cet inconvénient, il suffit d&#8217;ajouter un <em>Widget</em> texte vide dans la zone centrale, avec un espace insécable.</p>
<p>(<em>Nota</em>. Nous prions nos lecteurs de nous excuser pour les anglicismes, plus ou moins incontournables en la matière&#160;!)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.iptima.com/2008/08/19/ajouter-des-%c2%ab-widgets-%c2%bb-a-un-theme-wordpress/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
