Fork me on GitHub

Page (1) 2 3 4 »

Xoopser un template xhtml/css en moins de 10mn

200510
Juillet
  Christian Documentations 37998

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.

Semi pro
Inscrit le: 06/01/2004
De: Non loin de Paris
Contributions: 666
zoullou PostĂ© le: 13/07/2005 00:16  Mis Ă  jour: 13/07/2005 00:17
 Re: Xoopser un template xhtml/css en moins de 10mn
Pas besoin de s'ennervé .
L'utilisation basique de XOOPS (installation et utilisation de module) n'est pas bien dure aprés un petit temps d'adaptation.
Par contre, il est sur qu'il faut avoir quelques connaissance en (X)HTML/CSS pour pouvoir modifier ou créer un thème, c'est comme si tu disais que tu n'arrive pas à réparer ta voiture alors que tu n'a aucune connaissance en mécanique.
Heureusement pour toi, les forums de XOOPS France sont là pour t'aider. Tu peut utiliser préalablement la fonction recherhcer (en haut à droite) et si tu ne trouve pas de réponse pose ta question, nous nous ferons un plaisir de te répondre.

A+

PS : Tout le monde est bénévole ici
Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

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