Personnalisation complète de votre page d'accueil

Date du document en anglais : 23 Août 2009 - 15h28 - http://drupal.org/node/317461 Drupal 5.x Drupal 6.x



Si vous voulez que la mise en page de votre page d'accueil soit totalement différente du reste de votre site, vous pouvez définir un gabarit complet à cette fin.

Vous pourriez le faire parce que vous avez

  • une page d'accueil très graphique,
  • une maquette en provenance d'un designer qui ne peut pas être vraiment modifiée,
  • une intro en flash en guise de page d'accueil,
  • un « splash screen » ou toute autre nécessité.

... et  parce que faire tout ça dans un thème Drupal générique serait malcommode. 

N'importe quelle page Drupal peut être personnalisée, par le biais des template-suggestions utilisées dans le moteur phptemplate. Cette solution est puissante, apprenez-la.

Dans sa forme la plus simple, vous pouvez :

  1. dans votre dossier de thème, créer une page appelée page-front.tpl.php
  2. y copier du code source HTML statique, avec les corrections de chemins d'accès appropriées.
  3. C'est terminé !

Notez que les chemins relatifs vers les images (ou vers des swf) directement depuis la page ne marcheront pas pour trouver les images enregistrées près du dossier de votre thème. Enregistrer ces images dans le dossier de votre thème est la bonne façon de procéder, mais vous devrez reécrire tout votre code HTML pour utiliser soit 

<img src="/sites/all/themes/votretheme/images/votreimage.gif">

(qui est correct mais mauvais)

soit

<img src="<?php print $directory;?>/images/votreimage.gif">

(qui est beaucoup plus correct - $directory renvoie toujours le chemin du thème en cours d'utilisation)

Pour faire une page d'accueil relativement unique mais qui se marie bien avec Drupal, vous pouvez :

  1. dans votre dossier de thème, créer une page appelée page-front.tpl.php,
  2. y copier du code source HTML statique, avec les corrections de chemins d'accès appropriées.
  3. Comparer votre page avec la page de thème page.tpl.php «normale» et en copier les balises de code comme leur logique dans votre nouvelle page, aux bons endroits.
  4. Vous pouvez placer $content au milieu, des barres latérales aux endroits appropriés pour y placer des blocs ensuite, et $footer dans votre pied de page, etc. Essayez d'en reprendre autant que possible - cela s'avérera utile,  c'est aussi pour cette raison qu'on utilise un CMS.

Sous Drupal 6, les nouveaux gabarits ne seront pas forcément pris en compte dès leur création. Allez dans la page d'administration des thèmes et validez-la pour rafraîchir le cache des thèmes, refaites-le à chaque fois que vous ajoutez un fichier *.tpl.php.

Il y a également différents modules qui sont conçus pour vous permettre un contrôle avancé d'une page sans avoir trop de travail de mise en page, comme Panels ou peut-être Node style.

Reportez-vous aux tutoriaux pour des conseils sur la façon de modifier le contenu de la page d'accueil.



Edit de kolossaldrupal : allez jeter un œil sur la traduction de l'article de Michael Anello Blueprint CSS pour apprendre à réaliser un gabarit de page Drupal en moins de deux :-). Les références à l'article original se trouvent sur la page.


Commentaires

Poster un nouveau commentaire

Le contenu de ce champ sera maintenu privé et ne sera pas affiché publiquement.
  • Les adresses de pages web et de messagerie électronique sont transformées en liens automatiquement.
  • Tags HTML autorisés : <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Les lignes et les paragraphes vont à la ligne automatiquement.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>, <css>, <php>, <html>, <ccss>, <ccss>, <drupal5>, <drupal6>, <html>, <javascript>, <php>. Beside the tag style "<foo>" it is also possible to use "[foo]".
  • You may use [view:viewname] tags to display listings of nodes.

Plus d'informations sur les options de formatage

CAPTCHA
Cette question permet d'éviter le spam :
4 + 9 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.