{"id":1367,"date":"2010-02-16T13:34:39","date_gmt":"2010-02-16T12:34:39","guid":{"rendered":"http:\/\/flaven.fr\/?p=1367"},"modified":"2013-11-27T07:07:42","modified_gmt":"2013-11-27T06:07:42","slug":"drupal-theme-creer-un-theme-drupal-6-a-partir-dune-page-html","status":"publish","type":"post","link":"https:\/\/flaven.fr\/2010\/02\/drupal-theme-creer-un-theme-drupal-6-a-partir-dune-page-html\/","title":{"rendered":"Drupal, Theme &#8211; Cr\u00e9er un th\u00e8me Drupal 6 \u00e0 partir d&#8217;une page html"},"content":{"rendered":"<p>\t<!-- Drupal, Theme - Cr\u00e9er un th\u00e8me Drupal 6 \u00e0 partir d'une page html  --><br \/>\n\t<!--  Drupal, Template, Int\u00e9gration, html, CSS, XHTML, PHP, MySQL --><\/p>\n<p>On va tenter de r\u00e9aliser un th\u00e8me Drupal \u00e0 partir d&#8217;un fichier statique HTML. Le plus rapidement possible cela va sans dire car il est toujours question de se surpasser dans une \u00e9conomie capitaliste obs\u00e9d\u00e9 par la performance et le ROI ! <!--more-->\t<b>L&#8217;int\u00e9gration de ce th\u00e8me a vocation juste \u00e0 montrer qu&#8217;il est possible de plonger rapidement dans la code et de ressortir avec les pr\u00e9mices d&#8217;un th\u00e8me Drupal. Bien s\u00fbr, cela ne couvre que 60% d&#8217;un th\u00e8me op\u00e9rationnel sous Drupal 6, il reste beaucoup de <code>fine-tuning<\/code> pour parfaire ce th\u00e8me. Pour cet article, le th\u00e8me a \u00e9t\u00e9 r\u00e9alis\u00e9 sous Drupal 6.15<\/b><\/p>\n\t\t\t\t\t<div class=\"textwidget-unique text\">\n\n\t\t\t\t\t        <div class=\"textwidget-photo\">\n\t\t\t\t\t                <a href=\"https:\/\/flaven.fr\/books\/using-drupal\/\" class=\"photo\" title=\"Using Drupal\"><img loading=\"lazy\" decoding=\"async\" alt=\"Using Drupal\" src=\"http:\/\/ecx.images-amazon.com\/images\/I\/51q3GqMpbxL._SL160_.jpg\" width=\"122\" height=\"160\"><\/a>\n\t\t\t\t\t            <\/div>\n\t\t\t\t\t\t<div class=\"info half\">\n\t\t\t\t\t\t\t<h2 class=\"product-title\"><a class=\"head\" href=\"https:\/\/flaven.fr\/books\/using-drupal\/\" title=\"Using Drupal\">Using Drupal<\/a><\/h2>\n\t\t\t\t\t\t\t\n\t\t\t\t\t        <p class=\"product-excerpt\">Un livre complet sur comment construire diff\u00e9rents types de sites Web en utilisant le CMS Drupal, qui est la plate-forme de publication sur le Web tr\u00e8s populaire sur le Web. Drupal est sans doute la meilleure solution de gestion de contenu actuelle bien que la courbe d'apprentissage puisse \u00eatre longue surtout pour les personnes en charge de la gestion du site, disons l'\u00e9quipe \u00e9ditoriale. Le livre pr\u00e9sente de tr\u00e8s nombreuses \u00e9tudes de cas : Gestion des commentaires; Gestion d'un Wiki; Gestion des flux d'\u00e9dition; Gestion d'une galerie de photos; Manager des Sites multilingues ou enfin la gestion de type de contenu comme des \u00e9v\u00e9nements... Bref, un tour d'horizon tout \u00e0 complet.<\/p>\n\t\t\t\t\t\t\t\tGenre(s) : <a href=\"https:\/\/flaven.fr\/book-type\/agile\/\" rel=\"tag\">Agile<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/api\/\" rel=\"tag\">API<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/applications\/\" rel=\"tag\">Applications<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/cms\/\" rel=\"tag\">CMS<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/database-mysql\/\" rel=\"tag\">Database MySQL<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/development\/\" rel=\"tag\">Development<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/developpement-open-source\/\" rel=\"tag\">D\u00e9veloppement<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/drupal\/\" rel=\"tag\">Drupal<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/mobile\/\" rel=\"tag\">Mobile<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/module\/\" rel=\"tag\">Module<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/multilingual\/\" rel=\"tag\">Multilingual<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/open-source-agile-developpement\/\" rel=\"tag\">Open Source<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/php\/\" rel=\"tag\">PHP<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/php-applications\/\" rel=\"tag\">PHP Applications<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/seo\/\" rel=\"tag\">SEO<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/smo\/\" rel=\"tag\">SMO<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/theming\/\" rel=\"tag\">Theming<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/web-agile-ux\/\" rel=\"tag\">Web<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/web-apps\/\" rel=\"tag\">Web Apps<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/webdesign-responsive-agile\/\" rel=\"tag\">Webdesign<\/a>, <a href=\"https:\/\/flaven.fr\/book-type\/website\/\" rel=\"tag\">Website<\/a><br>Auteur(s) : <a href=\"https:\/\/flaven.fr\/book-author\/addison-berry\/\" rel=\"tag\">Addison Berry<\/a>, <a href=\"https:\/\/flaven.fr\/book-author\/angela-byron\/\" rel=\"tag\">Angela Byron<\/a>, <a href=\"https:\/\/flaven.fr\/book-author\/jeff-robbins\/\" rel=\"tag\">Jeff Robbins<\/a>, <a href=\"https:\/\/flaven.fr\/book-author\/nate-haug\/\" rel=\"tag\">Nate Haug<\/a><br>Edition(s) : <a href=\"https:\/\/flaven.fr\/book-description\/oreilly-media\/\" rel=\"tag\">O'Reilly Media<\/a><br>\n\t\t\t\t\t<div class=\"but-wrap\"><a href=\"http:\/\/www.amazon.fr\/Using-Drupal-Jeff-Robbins\/dp\/0596515804%3FSubscriptionId%3DAKIAJYB2QGGQOTHQLRPA%26tag%3Dhecubenet-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596515804\" class=\"button\"><span><i class=\"more\"><\/i>+ d'infos<\/span><\/a><\/div>\n\t\t\t\t\t\t<\/div>\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\n<h4>Les valeurs du fichier principale <code>page.tpl.php<\/code> <\/h4>\n<p>\tLa premi\u00e8re chose est bien connaitre les valeurs qui peuvent \u00eatre utilis\u00e9es dans le fichier <code>page.tpl.php<\/code> qui est disons le noeud, pour reprendre la terminologie &#8220;Drupalienne&#8221;, de l&#8217;affichage d&#8217;un th\u00e8me.<\/p>\n<p>\t<b>Ces valeurs sont appel\u00e9s par Drupal au sein de notre fichier <code>page.tpl.php<\/code>, vous n&#8217;aurez donc qu&#8217;\u00e0 remplacer les \u00e9l\u00e9ments statiques en <code>HTML<\/code> par d&#8217;autres valeurs dynamiques reconnus et utilis\u00e9s par Drupal 6.<\/b><\/p>\n<p>\tOn va retrouver ici, quelques-unes des pratiques qui \u00e9taient d\u00e9j\u00e0 en action sur un pr\u00e9c\u00e8dent article.<\/p>\n<ul>\n<li><a href=\"http:\/\/social.hecube.net\/blog\/2009\/06\/19\/drupal-6-les-bonnes-pratiques-pour-creer-un-theme-pour-drupal-6x\/\">Drupal 6 &#8211; les bonnes pratiques pour cr\u00e9er un th\u00e8me pour drupal 6.x<\/a><\/li>\n<\/ul>\n<p><b>Un extrait des valeurs possibles de <code>page.tpl.php<\/code><\/b><\/p>\n<blockquote><p>\n\t$base_path<br \/>\n\t    Returns the base URL path of the Drupal installation. At the very least, this will always default to \/.<br \/>\n\t$breadcrumb<br \/>\n\t    HTML for displaying the breadcrumbs at the top of the page.<br \/>\n\t$closure<br \/>\n\t    Needs to be displayed at the bottom of the page, for any dynamic javascript that needs to be called once the page has already been displayed.<br \/>\n\t$content<br \/>\n\t    The HTML content generated by Drupal to be displayed.<br \/>\n\t$css<br \/>\n\t    An array of all the CSS files for the current page.<br \/>\n\t$directory<br \/>\n\t    The directory the theme is located in, e.g.<br \/>\n\t    themes\/garland or themes\/garland\/minelli.<br \/>\n\t$feed_icons<br \/>\n\t    A string of all feed icons for the current page.<br \/>\n\t$footer_message<br \/>\n\t    The footer message as defined in the admin settings, also the HTML for the footer region.<br \/>\n\t$head<br \/>\n\t    HTML as generated by drupal_get_html_head().<\/p>\n<p>\t&#8230;. to be continued\n\t<\/p><\/blockquote>\n<p><i>Source : <a href=\"http:\/\/drupal.org\/node\/11812\">http:\/\/drupal.org\/node\/11812<\/a><\/i><\/p>\n<p><b>Ce fichier sera notre fichier principal pour ce th\u00e8me qui ne comporte \u00e0 ce jour qu&#8217;un seul fichier. Pour trouvre des modeles <code>HTML<\/code>, il suffit de se baisser. En effet, le Web regarde de ressources qui distribuent des templates <code>HTML<\/code><\/b>. Pour notre part, nous sommes all\u00e9s chercher un th\u00e8me nomm\u00e9 <code>singapore<\/code> sur freelayouts.com\/<\/p>\n<p><b>Le th\u00e8me <code>singapore<\/code> en <code>HTML<\/code> ou dans les petites rues de <code>singapore<\/code><\/b><br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2010\/02\/theme_drupal_5_min_1.jpg\" alt=\"Drupal, Theme - Cr\u00e9er un th\u00e8me Drupal 6 \u00e0 partir d'une page html\" width=\"500\" height=\"265\" \/><\/p>\n<p><i>Source : <a href=\"http:\/\/www.freelayouts.com\/websites\/html-templates?order=rating+desc\">http:\/\/www.freelayouts.com\/websites\/html-templates?order=rating+desc.<\/a><\/i><\/p>\n<h4>Etape 1 &#8211; Convertir notre fichier html en <code>page.tpl.php<\/code><\/h4>\n<p>\tC&#8217;est disons la chose la plus simple \u00e0 faire, renommer un fichier est donc la premi\u00e8re chose \u00e0 faire. Vous allez donc renommer <code>index.html<\/code> en <code>page.tpl.php<\/code><\/p>\n<h4>Etape 2 &#8211; Utiliser des normes dans les noms de vos r\u00e9pertoires et de vos fichiers au sein de votre futur th\u00e8me<\/h4>\n<p>\t<b>Le r\u00e9pertoire d&#8217;images<\/b><br \/>\n\tDans notre exemple, le r\u00e9pertoire d&#8217;image se nomme <code>grafics<\/code>, changez-le pour <code>images<\/code> ou <code>img<\/code>. Le nom de ce r\u00e9pertoire n&#8217;a pas d&#8217;impact sur le fonctionnement de Drupal mais c&#8217;est une bonne pratique de nomenclature pour chacun vos th\u00e8mes. On gagne toujours du temps et on se rapproche de l&#8217;adage, <code>Convention over Configuration<\/code><\/p>\n<p>\t<b>La feuille de style (CSS)<\/b><\/p>\n<p>\tLa feuille de style est toujours nomm\u00e9 <code>style.css<\/code>, comme dans WordPress d&#8217;ailleurs.<\/p>\n<h4>Etape 3 &#8211; Placer votre nouveau th\u00e8me dans le r\u00e9pertoire Drupal qui convient<\/h4>\n<p>\tLe r\u00e9pertoire qui dans notre exemple se nomme <code>singapore<\/code> devra se placer dans le r\u00e9pertoire ad\u00e9quat de Drupal. Ce r\u00e9pertoire se nomme <code>themes<\/code>, si c&#8217;est la premi\u00e8re fois que vous utilisez un th\u00e8me vous allez devoir le cr\u00e9er \u00e0 cette endroit <code>\/Applications\/MAMP\/htdocs\/[le_repertoire_dans_lequel_drupal_6_est_installe]\/sites\/all\/<\/code>..<br \/>\n\t<b>C&#8217;est dans ce r\u00e9pertoire que l&#8217;on stocke les th\u00e8mes personnalis\u00e9s pour Drupal<\/b><\/p>\n<p>\t<b>Le README.txt<\/b><\/p>\n<blockquote><p>\n\t\/\/ $Id: README.txt,v 1.3 2006\/12\/23 15:35:51 dries Exp $<\/p>\n<p>\tThis directory should be used to place downloaded and custom modules<br \/>\n\tand themes which are common to all sites. This will allow you to<br \/>\n\tmore easily update Drupal core files. These modules and themes should<br \/>\n\tbe placed in subdirectories called modules and themes as follows:<\/p>\n<p>\t  sites\/all\/modules<br \/>\n\t  sites\/all\/themes\n\t<\/p><\/blockquote>\n<h4>Etape 4 &#8211; Cr\u00e9er un fichier <code>.info<\/code> pour votre th\u00e8me<\/h4>\n<p>\tC&#8217;est une n\u00e9cessit\u00e9 pour faire fonctionner un th\u00e8me sous Drupal 6.<\/p>\n<p>\t<b>A titre d&#8217;exemple, la source du fichier <code>garland.info<\/code><\/b><\/p>\n<pre lang=\"txt\">\r\n\r\n\t; $Id: garland.info,v 1.5 2007\/07\/01 23:27:32 goba Exp $\r\n\tname = Garland\r\n\tdescription = Tableless, recolorable, multi-column, fluid width theme (default).\r\n\tversion = VERSION\r\n\tcore = 6.x\r\n\tengine = phptemplate\r\n\tstylesheets[all][] = style.css\r\n\tstylesheets[print][] = print.css\r\n\r\n\t; Information added by drupal.org packaging script on 2009-05-13\r\n\tversion = \"6.12\"\r\n\tproject = \"drupal\"\r\n\tdatestamp = \"1242243950\"\r\n\r\n\t<\/pre>\n<pre lang=\"txt\">\r\n\t\t; $Id: singapore.info,v 1.0 2010\/02\/14 16:14:05 $\r\n\t\tname = singapore\r\n\t\tscreenshot = screenshot.png\r\n\t\tdescription = Quick and dirty conversion of an HTML page.\r\n\t\tversion = VERSION\r\n\t\tcore = 6.x\r\n\t\tengine = phptemplate\r\n\r\n\r\n\t\tregions[left] = Left sidebar\r\n\t\tregions[right] = Right sidebar\r\n\t\tregions[content] = Content\r\n\t\tregions[header] = Header\r\n\t\tregions[footer] = Footer\r\n\r\n\r\n\r\n\t\tstylesheets[all][] = style.css\r\n\t\tstylesheets[print][] = print.css\r\n\r\n\t\t; Information added by hecube.net for an article about quick creation for theme in drupal 6, made the 2010-02-14\r\n\t\tversion = \"6.15\"\r\n\t\tproject = \"drupal\"\r\n\t\tdatestamp = \"1266160263\"\r\n\r\n<\/pre>\n<p>Pour information, la valeur <code>datestamp<\/code> est le nombre de secondes qui s\u00e9pare la date de cr\u00e9ation du fichier et le 1 Janvier 1970. Vous obtiendrez en php, la valeur en faisant un <code>print<\/code> de la valeur <code>time();<\/code><\/p>\n<pre lang=\"php\" escaped=\"true\">\r\n\r\n\t$datestamp = time ();\r\n\tprint('$datestamp =&gt; '.$datestamp.'');\r\n\r\n\t<\/pre>\n<h4>Injecter quelques valeurs de Drupal dans votre tout nouveau template<\/h4>\n<p>\tOn place ici en vrac quelques valeurs qui vont \u00eatre appel\u00e9es au sein de votre th\u00e8me pour :<\/p>\n<ul>\n<li>parfaire un peu son caract\u00e8re dynamique<\/li>\n<li>quitter d\u00e9finitivement le cot\u00e9 statique de notre th\u00e8me HTML<\/li>\n<\/ul>\n<p>Un conseil, conserver Garland comme th\u00e8me pour votre administration, car vous risquez avec l&#8217;activation d&#8217;un th\u00e8me aussi sommaire de ne pouvoir acc\u00e9der ensuite \u00e0 votre administration <code>http:\/\/[le_chemin_vers_l_admin-de_votre drupal]\/?q=admin<\/code>. Sous MAMP et dans notre exemple, l&#8217;admininbstration est accessible \u00e0 cette adresse <code>http:\/\/127.0.0.1\/DRUPAL_6\/site\/?q=admin<\/code>.<\/p>\n<p><b>Activation du th\u00e8me <code>singapore<\/code><\/b><br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2010\/02\/theme_drupal_5_min_4.jpg\" alt=\"Drupal, Theme - Cr\u00e9er un th\u00e8me Drupal 6 \u00e0 partir d'une page html\" width=\"500\" height=\"265\" \/><\/p>\n<p><b>On maintient <code>Garland<\/code> en m\u00eame temps que le th\u00e8me <code>singapore<\/code><\/b><br \/>\n\t<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2010\/02\/theme_drupal_5_min_3.jpg\" alt=\"Drupal, Theme - Cr\u00e9er un th\u00e8me Drupal 6 \u00e0 partir d'une page html\" width=\"500\" height=\"265\" \/><\/p>\n<p>\t\t<b>On maintient <code>Garland<\/code>, il est possible aussi de conserver ce th\u00e8me lorsque on \u00e9dite les articles en cliquant sur le checkbox <code>Use administration theme for content editing<\/code>.<\/b><br \/>\n\t\t<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2010\/02\/theme_drupal_5_min_5.jpg\" alt=\"Drupal, Theme - Cr\u00e9er un th\u00e8me Drupal 6 \u00e0 partir d'une page html\" width=\"500\" height=\"265\" \/><\/p>\n<p><b>Le th\u00e8me <code>singapore<\/code> sous Drupal 6.x<\/b><br \/>\n\t<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2010\/02\/theme_drupal_5_min_2.jpg\" alt=\"Drupal, Theme - Cr\u00e9er un th\u00e8me Drupal 6 \u00e0 partir d'une page html\" width=\"500\" height=\"265\" \/><\/p>\n<p>\t<b>Un rappel de quelques valeurs essentiels \u00e0 passer dans la fichier de votre th\u00e8me Drupal 6.x<\/b><\/p>\n<pre lang=\"php\" escaped=\"true\">\r\n\r\n\t\t&lt;?php\r\n\r\n\t\tprint(''.$tabs.'');\r\n\t\tprint(''.$title.'');\r\n\t\tprint(''.$content.'');\r\n\t\tprint(''.$right.'');\r\n\t\tprint(''.$footer.'');\r\n\t\tprint(''.$footer_message.'');\r\n\r\n\t\t ?&gt;\r\n\r\n\r\n\t\t<\/pre>\n<p>\t<b>Notre fichier <code>page.tpl.php<\/code> aux couleurs de <code>singapore<\/code><\/b><\/p>\n<pre lang=\"php\" escaped=\"true\">\r\n\r\n\t\t&lt;?php\r\n\t\t\/\/ $Id: page.tpl.php,v 1.18.2.1 2009\/04\/30 00:13:31 goba Exp $\r\n\t\t?&gt;&lt;!DOCTYPE html PUBLIC &quot;-\/\/W3C\/\/DTD XHTML 1.0 Strict\/\/EN&quot;\r\n\t\t  &quot;http:\/\/www.w3.org\/TR\/xhtml1\/DTD\/xhtml1-strict.dtd&quot;&gt;\r\n\t\t&lt;html xmlns=&quot;http:\/\/www.w3.org\/1999\/xhtml&quot; xml:lang=&quot;&lt;?php print $language-&gt;language ?&gt;&quot; lang=&quot;&lt;?php print $language-&gt;language ?&gt;&quot; dir=&quot;&lt;?php print $language-&gt;dir ?&gt;&quot;&gt;\r\n\t\t  &lt;head&gt;\r\n\t\t    &lt;title&gt;&lt;?php print $head_title ?&gt;&lt;\/title&gt;\r\n\t\t    &lt;?php print $head ?&gt;\r\n\t\t\t&lt;?php print $styles ?&gt;\r\n\t\t    &lt;?php print $scripts ?&gt;\r\n\t\t  &lt;\/head&gt;\r\n\t\t&lt;body&gt;\r\n\t\t &lt;div id=&quot;overall&quot;&gt;\r\n\r\n\t\t  &lt;!-- start head grafic --&gt;\r\n\t\t  &lt;div id=&quot;head&quot;&gt;\r\n\t\t    &lt;!-- start top navigation --&gt;\r\n\t\t    &lt;div id=&quot;topnav&quot;&gt;\r\n\t\t      \t&lt;?php if (isset($primary_links)) : ?&gt;\r\n\t\t          &lt;?php print theme('links', $primary_links, array('class' =&gt; 'links primary-links')) ?&gt;\r\n\t\t        &lt;?php endif; ?&gt;\r\n\t\t    &lt;\/div&gt;\r\n\t\t  &lt;\/div&gt;\r\n\r\n\t\t   &lt;!-- start any-links &amp; mid grafic--&gt;\r\n\t\t   &lt;div id=&quot;anyline&quot;&gt;\r\n\t\t    &lt;div id=&quot;anybgr&quot;&gt;&lt;\/div&gt;\r\n\t\t     &lt;div id=&quot;anylink&quot;&gt;\r\n\t\t\t &lt;?php \/* PAS UTILE POUR LE MOMENT *\/  ?&gt;\r\n\t\t      &lt;!-- &lt;a href=&quot;#&quot; target=&quot;_top&quot; onfocus=&quot;this.blur()&quot;&gt;anylink&lt;\/a&gt;\r\n\t\t            &lt;a href=&quot;#&quot; target=&quot;_top&quot; onfocus=&quot;this.blur()&quot;&gt;anylink&lt;\/a&gt;\r\n\t\t            &lt;a href=&quot;#&quot; target=&quot;_top&quot; onfocus=&quot;this.blur()&quot;&gt;anylink&lt;\/a&gt;\r\n\t\t            &lt;a href=&quot;#&quot; target=&quot;_top&quot; onfocus=&quot;this.blur()&quot;&gt;anylink&lt;\/a&gt;\r\n\t\t            &lt;a href=&quot;#&quot; target=&quot;_top&quot; onfocus=&quot;this.blur()&quot;&gt;anylink&lt;\/a&gt;\r\n\t\t            &lt;a href=&quot;#&quot; target=&quot;_top&quot; onfocus=&quot;this.blur()&quot;&gt;anylink&lt;\/a&gt; --&gt;\r\n\t\t    &lt;\/div&gt;\r\n\t\t   &lt;\/div&gt;\r\n\r\n\t\t  &lt;!-- bottom grafic &amp; homepage title --&gt;\r\n\t\t  &lt;div id=&quot;tgbtm&quot;&gt;&lt;\/div&gt;\r\n\t\t    &lt;!-- insert homepage title here --&gt;\r\n\t\t    &lt;div id=&quot;title-shadow&quot;&gt;&lt;?php print $site_slogan ?&gt;&lt;\/div&gt;\r\n\t\t    &lt;div id=&quot;title&quot;&gt;&lt;?php\r\n\t\t\/* POUR FAIRE UN LIEN SUR LA VALEUR $site_slogan EVENTUELLEMENT *\/\r\n\t\t \/\/ print ('&lt;a href=&quot;'. check_url($front_page) .'&quot; title=&quot;'. $site_slogan .'&quot;&gt;'.$site_slogan.'&lt;\/a&gt;'); \r\n\t\t print (''.$site_slogan.''); \r\n\t\t ?&gt;&lt;\/div&gt;\r\n\r\n\r\n\t\t  &lt;!-- start sidebar --&gt;\r\n\t\t  &lt;div id=&quot;sidebar&quot;&gt;\r\n\t\t\t&lt;?php print $mission ?&gt;\r\n\t\t\t&lt;?php if ($search_box): ?&gt;&lt;div class=&quot;block block-theme&quot;&gt;&lt;?php print $search_box ?&gt;&lt;\/div&gt;&lt;?php endif; ?&gt;\r\n\t\t    &lt;?php print $left ?&gt;\r\n\r\n\t\t  &lt;\/div&gt;\r\n\r\n\t\t  \t&lt;div id=&quot;content&quot;&gt;\r\n\t\t\t\t&lt;?php print(''.$content.''); ?&gt;\r\n\t\t\t&lt;\/div&gt;\r\n\r\n\t\t &lt;\/div&gt;\r\n\r\n\t\t &lt;!-- footer lines --&gt;\r\n\t\t &lt;div id=&quot;overall-footer&quot;&gt;\r\n\t\t   &lt;div id=&quot;footer&quot;&gt;\r\n\t\t\t\t&lt;b&gt;&lt;?php print $footer_message?&gt;&lt;\/b&gt;\r\n\t\t\t\t&lt;br&gt;&lt;br&gt;\r\n\t\t\t\t&lt;?php print $footer?&gt;\r\n\t\t\t\t&lt;br&gt;&lt;br&gt;\r\n\t\t\t\t&lt;?php print $feed_icons ?&gt;\t\t\r\n\t\t\t&lt;\/div&gt;\r\n\t\t &lt;\/div&gt;\r\n\r\n\t\t&lt;?php print $closure ?&gt;\r\n\r\n\t\t&lt;\/body&gt;\r\n\t\t&lt;\/html&gt;\r\n\r\n\r\n\t<\/pre>\n<p><b>Conclusion :  Sans \u00eatre un d\u00e9veloppeur aguerri mais avec de bonnes notions d&#8217;<code>HTML<\/code>, de <code>CSS<\/code>, une compr\u00e9hension basique du <code>PHP<\/code> et bien \u00e9videmment un solide sens pratique, on peut parvenir \u00e0 un d\u00e9but de th\u00e8me sous <code>Drupal 6.x<\/code>. Paradoxalement, cette relative simplicit\u00e9 dans la cr\u00e9ation de th\u00e8me contraste avec la complexit\u00e9 de la gestion \u00e9ditoriale. En effet, d&#8217;un point strictement \u00e9ditorial, le temps d&#8217;apprentissage et de maitrise du <code>workflow<\/code> dans la publication de <code>Page<\/code> et de <code>Story<\/code> va bien plus fastidieux que sous WordPress par exemple. A ce titre, \u00e0 lire, un excellent et amusant retour d&#8217;exp\u00e9rience sur Drupal vs WordPress dans l&#8217;article ci-dessous notamment la partie <code>Why I Would Stay Away from Drupal<\/code>.<\/b><\/p>\n<p><b>Une partie int\u00e9ressante de cette article<\/b><\/p>\n<blockquote><p>\n\t[&#8230;] At this point, I realized that Drupal users consisted mainly of web developers and programmers who saw the beauty of Drupal from it\u2019s code rather than it\u2019s interface. It was much easier for them to extend the Drupal functions because the \u201cCODE\u201d was clean.<\/p>\n<p>\tBut for someone who doesn\u2019t know how to code, I found it difficult to work with. Don\u2019t get me wrong. Drupal is a fantastic CMS. And if you find it meets your needs out of the box, then by all means use it. But if like me and many other online publishers, you need to tweak it a bit here and there, then you\u2019re better off with something like Joomla unless you have an in house programmer that can do all the tweaking for you.\t[&#8230;]<\/p>\n<\/blockquote>\n<p><i>Source : <a href=\"http:\/\/www.webbriefcase.net\/2009-04\/choosing-a-cms-to-run-your-membership-site\/\" target=\"_blank\">http:\/\/www.webbriefcase.net\/2009-04\/choosing-a-cms-to-run-your-membership-site\/<\/a><\/i><\/p>\n<h2>En savoir plus<\/h2>\n<ul>\n<li>La page d&#8217;information du fichier <code>Page.tpl.php<\/code> issue de la documentation &#8220;PHPTemplate theme engine&#8221;<br \/>\n\t\t<a href=\"http:\/\/drupal.org\/node\/11812\" target=\"_blank\">http:\/\/drupal.org\/node\/11812<\/a><\/li>\n<li>A lire pour le retour d&#8217;exp\u00e9rience Drupal vs Wordpres \/Choosing a CMS to Run Your Membership Site<br \/>\n\t\t<a href=\"http:\/\/www.webbriefcase.net\/2009-04\/choosing-a-cms-to-run-your-membership-site\/\" target=\"_blank\">http:\/\/www.webbriefcase.net\/2009-04\/choosing-a-cms-to-run-your-membership-site\/<\/a><\/li>\n<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>On va tenter de r\u00e9aliser un th\u00e8me Drupal \u00e0 partir d&#8217;un fichier statique HTML. Le plus rapidement possible cela va sans dire car il est&hellip; <\/p>\n<p class=\"text-center\"><a href=\"https:\/\/flaven.fr\/2010\/02\/drupal-theme-creer-un-theme-drupal-6-a-partir-dune-page-html\/\" class=\"more-link\">Continue reading &rarr; <span class=\"screen-reader-text\">Drupal, Theme &#8211; Cr\u00e9er un th\u00e8me Drupal 6 \u00e0 partir d&#8217;une page html<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":9473,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"bf_ai_meta_description":"Cr\u00e9er un th\u00e8me Drupal 6 \u00e0 partir d'une page HTML. Utilisez des outils sp\u00e9cifiques pour obtenir rapidement un th\u00e8me fonctionnel.","bf_ai_og_title":"Th\u00e8me Drupal 6: HTML \u00e0 th\u00e8me","footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[3444,3447,3451,3435,3452],"tags":[209,2225,303,304,2211,20,305,212],"class_list":["post-1367","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-programming-databases","category-technology-trends","category-web-design-front-end","category-web-development","category-wordpress-cms","tag-css","tag-drupal","tag-html","tag-integration","tag-mysql","tag-php","tag-template","tag-xhtml"],"jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p3Vuhl-m3","jetpack_featured_media_url":"https:\/\/flaven.fr\/wp-content\/uploads\/2010\/02\/drupal_generic_g_bf.jpg","_links":{"self":[{"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/posts\/1367","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/comments?post=1367"}],"version-history":[{"count":2,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/posts\/1367\/revisions"}],"predecessor-version":[{"id":10181,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/posts\/1367\/revisions\/10181"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/media\/9473"}],"wp:attachment":[{"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/media?parent=1367"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/categories?post=1367"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/tags?post=1367"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}