Fork me on GitHub

Page (1) 2 3 4 »

Xoopser un template xhtml/css en moins de 10mn

200510
Juillet
  Christian Documentations 39818

Sous ce titre volontairement provocateur mais tout à fait réalisable, nous souhaitons vous aider à utiliser des thèmes qui ne soient plus forcément basés sur des tableaux, mais plutôt en suivant les recommandations du W3C.
Nous vous proposons la méthode suivante : réaliser un thème xoops à partir d'un template standard non xoops téléchargeable sur le site Alsacreations. Après avoir rappelé ce qu'est un thème et expliqué comment fonctionne le thème default, nous construirons ce nouveau thème avec juste quelques copier/coller.

De quoi avez-vous besoin ? juste d'un éditeur de texte tout simple, la boîte d'aspirine est en principe superflue.




1. Qu'est-ce qu'un thème

Un thème se compose d'éléments qui vont déterminer l'apparence globale de votre site. On y positionne l'emplacement des différents blocs, le contenu, le logo, les bannières, etc...
Les templates Xoops, quant à eux, sont des fichiers ayant une extension html, ils sont "gérés" par les modules et sont destinés à assurer l'affichage et la présentation des données issues de ces modules.
L'utilisation du mot template dans le titre de cet article peut paraître impropre dans le monde xoops, mais c'est le mot qu'il vous faudra utiliser dans un moteur de recherche pour trouver des modèles. A la fin de cet article, vous trouverez quelques liens de téléchargement.

Comment est organisé un thème ?

Votre site dispose d'un répertoire themes dans lesquels sont stockés les différents thèmes. Chaque thème dispose donc d'un répertoire qui porte son nom (sans accent ni espaces) dans lequel on trouvera au minimum les fichiers suivants :

  • un fichier de gabarit : theme.html
  • une feuille de style principale : style.css, Ă©ventuellement des fichiers secondaires comme styleNN.css et styleMAC.css pour assurer la compatibilitĂ© avec d'autres navigateurs
  • Ă©ventuellement un rĂ©pertoire images pour stocker les diffĂ©rentes images utilisĂ©es par le thème

2. Présentation du thème default

le thème default est l'un des thèmes qui est systématiquement présent dans les versions de xoops que vous téléchargez.
Après une image présentant son architecture, vous trouvez dans l'encart ci-après une version de ce thème dans laquelle ont été insérés des commentaires en français

Anatomie du thème default
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<{$xoops_langcode}>" lang="<{$xoops_langcode}>">
<
head>
<
meta http-equiv="content-type" content="text/html; charset=<{$xoops_charset}>" />
<
meta http-equiv="content-language" content="<{$xoops_langcode}>" />
<
meta name="robots" content="<{$xoops_meta_robots}>" />
<
meta name="keywords" content="<{$xoops_meta_keywords}>" />
<
meta name="description" content="<{$xoops_meta_description}>" />
<
meta name="rating" content="<{$xoops_meta_rating}>" />
<
meta name="author" content="<{$xoops_meta_author}>" />
<
meta name="copyright" content="<{$xoops_meta_copyright}>" />
<
meta name="generator" content="XOOPS" />
<
title><{$xoops_sitename}> - <{$xoops_pagetitle}></title>
<
link href="<{$xoops_url}>/favicon.ico" rel="SHORTCUT ICON" />
<
link rel="stylesheet" type="text/css" media="screen" href="<{$xoops_url}>/xoops.css" />
<
link rel="stylesheet" type="text/css" media="screen" href="<{$xoops_themecss}>" />
<!-- 
RMVadded module header -->
<{
$xoops_module_header}>
<
script type="text/javascript">
<!--
<{
$xoops_js}>
//-->
</script>
</head>
<body>
  <table cellspacing="0">
    <tr id="header">
      <!-- Affichage du logo du site dont l'image est situĂ©e dans le rĂ©pertoire images Ă  la racine de votre site -->
      <td id="headerlogo"><a href="<{$xoops_url}>/"><img src="<{$xoops_imageurl}>logo.gif" width="150" height="80" alt="" /></a></td>
      <!-- Affichage d'une bannière alĂ©atoire provenant de la gestion intĂ©grĂ©e des bannières dans Xoops -->
      <td id="headerbanner"><{$xoops_banner}></td>
    </tr>
    <tr>
      <td id="headerbar" colspan="2">&nbsp;</td>
    </tr>
  </table>

  <table cellspacing="0">
    <tr>
      <td id="leftcolumn">
        <!-- DĂ©but de la boucle pour affichage des blocs dans la colonne de gauche -->
        <{foreach item=block from=$xoops_lblocks}>
          <{include file="default/theme_blockleft.html"}>
        <{/foreach}>
        <!-- Fin de la boucle pour affichage des blocs dans la colonne de gauche -->

      </td>

      <td id="centercolumn">

        <!-- Test pour vĂ©rifier s'il faut afficher des blocs au centre de la page -->
        <{if $xoops_showcblock == 1}>

        <table cellspacing="0">
          <tr>
            <td id="centerCcolumn" colspan="2">

            <!-- DĂ©but de la boucle pour affichage des blocs centrĂ©s dans la colonne du milieu  -->
            <{foreach item=block from=$xoops_ccblocks}>
              <{include file="default/theme_blockcenter_c.html"}>
            <{/foreach}>
            <!-- Fin de la boucle pour affichage des blocs centrĂ©s dans la colonne du milieu -->

            </td>
          </tr>
          <tr>
            <td id="centerLcolumn">

            <!-- DĂ©but de la boucle pour affichage des blocs centrĂ©s-gauche dans la colonne du milieu -->
              <{foreach item=block from=$xoops_clblocks}>
                <{include file="default/theme_blockcenter_l.html"}>
              <{/foreach}>
            <!-- Fin de la boucle pour affichage des blocs centrĂ©s-gauche dans la colonne du milieu -->

            </td><td id="centerRcolumn">

            <!-- DĂ©but de la boucle pour affichage des blocs centrĂ©s-droit dans la colonne du milieu -->
              <{foreach item=block from=$xoops_crblocks}>
                <{include file="default/theme_blockcenter_r.html"}>
              <{/foreach}>
            <!-- Fin de la boucle pour affichage des blocs centrĂ©s-droit dans la colonne du milieu -->

            </td>
          </tr>
        </table>

        <{/if}>
        <!-- Fin du test sur l'affichage des blocs dans la colonne du milieu -->
    
    <!-- Affichage du contenu du module actuel -->
        <div id="content">
          <{$xoops_contents}>
        </div>
        <!-- fin de l'affichage du contenu du module actuel -->
      </td>

      <!-- test pour affichage Ă©ventuel de blocs dans la colonne droite -->
      <{if $xoops_showrblock == 1}>

      <td id="rightcolumn">
        <!-- DĂ©but de la boucle pour affichage des blocs dans la colonne de droite -->
        <{foreach item=block from=$xoops_rblocks}>
          <{include file="default/theme_blockright.html"}>
        <{/foreach}>
        <!-- Fin de la boucle pour affichage des blocs dans la colonne de droite -->
      </td>
     <!-- fin du test pour affichage Ă©ventuel de blocs dans la colonne droite -->
      <{/if}>

    </tr>
  </table>
   
   <!-- Affichage du pied de page -->
  <table cellspacing="0">
    <tr id="footerbar">
      <td><a href="https://www.frxoops.org/" target="_blank"><img src="<{$xoops_imageurl}>poweredby.gif" alt="" /></a></td>
    </tr>
  </table>
</body>
</html>

Les 25 premières lignes de ce fichier theme.html sont destinées à enregistrer les différentes balises nécessaires à l'identification de votre site et à son référencement. Les informations présentées sous cette forme <{$xoops_meta_description}> sont des balises Smarty. Ces variables sont alimentées automatiquement par le système, mais vous pouvez les personnaliser par les menus suivants :

  • Admin system, prĂ©fĂ©rences, paramètres gĂ©nĂ©raux : titre du site, slogan
  • Admin system, prĂ©fĂ©rences, meta balises et pied de page

La lecture de la suite de ce code affiche clairement que l'alimentation des blocs s'effectue en positionnant des boucles (3 lignes à chaque fois) alors que l'affichage du contenu d'un module est tout simplement réalisé avec la formule <{$xoops_content}>.

A noter cependant que le thème défaut n'utilise pas les informations stockées pour le pied de page paramétrables dans le menu admin system, préférences, meta balises et pied de page. Pour les afficher, il suffit de positionner cette variable : <{$xoops_footer}>

Note: 9.00 (4 votes) - Noter cet article -
Page (1) 2 3 4 »

Partager Twitter Partagez cette article sur GG+
Format imprimable Envoyer cet article Ă  un ami
Les commentaires appartiennent Ă  leurs auteurs. Nous ne sommes pas responsables de leur contenu.

Supporter Xoops
Inscrit le: 09/01/2005
De: Breizh
Contributions: 16972
Kris PostĂ© le: 11/07/2005 01:19  Mis Ă  jour: 11/07/2005 01:19
 Re: Xoopser un template xhtml/css en moins de 10mn
Félicitations pour cet excellent tuto, qui va ravir les membres de frxoops.
J'ai mis moins de temps à faire mon thème que christian ses 4 pages de cours !!

Un article de professionnel
:tucartonnes:

Répons(s) Auteur Posté le
 Re: Xoopser un template xhtml/css en moins de 10mn zoullou 11/07/2005 10:46
    Re: Xoopser un template xhtml/css en moins de 10mn pwmac 12/07/2005 18:24
      Re: Xoopser un template xhtml/css en moins de 10mn Anonyme 12/07/2005 21:15
        Re: Xoopser un template xhtml/css en moins de 10mn philou 12/07/2005 21:25
          Re: Xoopser un template xhtml/css en moins de 10mn pwmac 12/07/2005 23:13
            Re: Xoopser un template xhtml/css en moins de 10mn zoullou 13/07/2005 00:16
            Re: Xoopser un template xhtml/css en moins de 10mn fooups 14/07/2005 09:00
            Re: Xoopser un template xhtml/css en moins de 10mn Paul 27/11/2005 16:16
              Re: Xoopser un template xhtml/css en moins de 10mn jeromehej 21/09/2010 20:46
 Re: Xoopser un template xhtml/css en moins de 10mn mediateur 24/07/2005 16:37
    Re: Xoopser un template xhtml/css en moins de 10mn bobjean 26/08/2005 03:37
      Re: Xoopser un template xhtml/css en moins de 10mn fooups 26/08/2005 09:16
        Re: Xoopser un template xhtml/css en moins de 10mn mediateur 04/09/2005 09:09
          Re: Xoopser un template xhtml/css en moins de 10mn Kris 04/09/2005 14:15

Newbie
Inscrit le: 12/07/2005
De:
Contributions: 1
SuperDevy PostĂ© le: 12/07/2005 19:57  Mis Ă  jour: 12/07/2005 19:57
 Re: Xoopser un template xhtml/css en moins de 10mn
Génial, je commençais à démoraliser en voyant tous ces templates à base de tableau. Certain tutos appreinnement même à les utiliser !

Merci, je crois que que si cet article n'avait pas été là j'aurai abandonné Xoops ...

Team FrXoops
Inscrit le: 01/11/2004
De:
Contributions: 1823
patz PostĂ© le: 06/09/2005 07:18  Mis Ă  jour: 06/09/2005 07:18
 Re: Xoopser un template xhtml/css en moins de 10mn
super article comme d'habitude (même moi j'y suis arrivé c'est dire)mais comme je suis un peu flemmard j'ai trouvé ce site csscreatoravec la page 1 qui permet de creer untemplate css en ligne en complétant des champs et celle-ci pour le style css très sommaire de la page
Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

109 Personne(s) en ligne (2 Personne(s) connectée(s) sur Articles) | Utilisateur(s): 0 | Invité(s): 109 | Plus ...