5568 sujets

Sémantique web et HTML

Ayant choisi de faire un site web en utilisant une mise en page à colonnes en CSS (comme préconisé par l'auteur), je me suis rendue compte que je devais copier/coller mon menu, mon pied de page sur chaque page...

Ceci pouvant donner lieu à des erreurs de copier coller ou même être particulièrement pénible si l'on a 200 pages différentes, je me demandais s'il était possible de lier le contenu d'un document texte externe à la place.

Bref, au lieu d'avoir <ul id="menu><li><a [...]></a></li></ul> sur chaque page de mon site, je pouvais simplement dire à mon document html "va chercher le contenu là-bas". Comme ça je ne modifie que ce document (une seule fois), modification qui s'applique partout...

Si ça se trouve la solution est simple comme bonjour (et je n'y pense même pas), dans ce cas, toutes mes excuses...

Merci d'avance,

MeLu-perdue
Je te conseil de te renseigner sur les "include" en php.

c'est très simple et cela répondra à 100% à tes attentes.


je n'en dis pas plus, il y a déjà une multitudes d'exemples sur le forum et sur le site d'alsa (je ne parle même pas du web Smiley lol )

bon courage
Modérateur
Bonjour MeLu,

Utilise-tu un éditeur ? Si oui, quel est son nom ?

Certains éditeurs offrent des systèmes de templates, Dreamweaver notamment. Cela permet de créer une page de base, de définir des zones éditables, puis d'appliquer la template aux pages. Lorsque la template est modifiée, toutes les pages utilisant cette template sont modifiées automatiquement. Voir également les librairies qui fonctionnent sur le même principe.
je te conseille d utiliser un rechercher et remplacer dans dreamweaver...en 2 clic tu modofie toutes les pages de ton site
mas
Modérateur
masprod a écrit :
je te conseille d utiliser un rechercher et remplacer dans dreamweaver...en 2 clic tu modifie toutes les pages de ton site
mas


Personnellement, tant qu'à utiliser du Rechercher/Remplacer dans Dreamweaver, aussi bien d'utiliser la technique des templates ou des librairies de Dreamweaver qui est beaucoup plus fiable et perfectionnée.
Modifié par Tony Monast (22 Dec 2006 - 21:15)
c'est vrai Tony mais voulais aller au plus rapide ...
javais aussi oublié ces librairies ...
je ne sais plus si les templates ne generent par contre pas trop de code qui pollue un peu au niveau du réf ??
mas
Modérateur
masprod a écrit :

je ne sais plus si les templates ne generent par contre pas trop de code qui pollue un peu au niveau du réf ??


Non ca ne pollue pas tellement le code source. Il y a un commentaire HTML pour relier la page à la template, puis deux commentaires (ouvrant et fermant) pour chaque zone éditable. On se retrouve en moyenne avec 7 commentaires HTML, ce qui est plus qu'acceptable.
MeLu a écrit :
Je ne parle pas (encore) le php... Smiley decu


Moi non plus, mais c'est très simple de ne retenir que ce qui t'es utile dans un premier temps... libre à toi ensuite de passer plus de temps pour apprendre toutes les subtilités de ce langage...

Pour mon site, j'utilise l'include pour le menu et je trouve cela très très pratique. De plus je n'utilise pas Dreamweaver, donc...

Je ne suis pas tellement allé plus loin dans l'utilisation du php... donc tu vois rien de sorcier... pour user d'une chose très pratique que permet le php...

Je te conseille donc aussi de lire les articles sur les includes que tu peux trouver sur ce forum en faisant une recherche sur le sujet.

a+
Benjamin D.C. a écrit :
Je ne peux que t'encourager à lire cet article: Inclure un fichier dans un autre, grâce à CSS et PHP. C'est simple, bien expliqué, et facile à mettre en place. Il ne te reste qu'à franchir le cap Smiley cligne


En fait pour des grands débutants en php cet article est finalement assez complexe car il ne repose pas sur l'utilisation de l'include simple mais sur celle de l'include conditionnelle.

à MeLu > apprendre le php c'est une chose (à faire d'ailleurs), utiliser quelque petites recettes c'en est une autre.

Par rapport à ce que tu cherches il y a deux contraintes :
1. Avoir un hébergement qui supporte le php
2. Créer des documents avec l'extension .php (et non plus .html)

Ensuite partant de ta description de chacun de tes documents


<body>
...
...


...


...
...
<! Ici l'emplacement du menu -->
<div id="menu">
... Le menu ...
</div>
<!-- Fin emplacement menu -->
</body>


Dans chacun de ces documents tu mets à l'emplacement du menu, en remplacement du code précédent, ceci :

<! Ici l'emplacement du menu -->

<?php
include 'menu.php';
?>

<!-- Fin emplacement menu -->



Et voilà tu n'as plus qu'à créer le fichier menu.php qui contiendra simplement

<div id="menu">
... Le menu ...
</div>

Modifié par clb56 (23 Dec 2006 - 09:08)
Que ce soit en php ou dans d'autres langages, cette technique existe. Elle consiste en un template de page, déginissant ton "modèle" de page. Puis les différentes zones de ton template son construit à partir d'autres pages.

En php, via la fonction include, tu inclues dans ton template des autres pages php/html.

En java, dans des applis web basé sur Struts ou Spring par exemple, l'excellent plugin Tiles permet d'avoir un même comportement. Il n'y a même plus de fonction include à mettre dans tes templates, tout est géré dans des fichiers de configuration xml.
Antoine_fr a écrit :
Que ce soit en php ou dans d'autres langages, cette technique existe. Elle consiste en un template de page, déginissant ton "modèle" de page. Puis les différentes zones de ton template son construit à partir d'autres pages.

En php, via la fonction include, tu inclues dans ton template des autres pages php/html.

En java, dans des applis web basé sur Struts ou Spring par exemple, l'excellent plugin Tiles permet d'avoir un même comportement. Il n'y a même plus de fonction include à mettre dans tes templates, tout est géré dans des fichiers de configuration xml.


Salut,

ce dont tu parles est surement très intéressant...

... Sauf que je ne vois pas du tout en quoi...

... Et pour cause puisque je n'ai pas compris un traite mot à ton message Smiley cligne
Antoine_fr a écrit :
n java, dans des applis web basé sur Struts ou Spring par exemple, l'excellent plugin Tiles permet d'avoir un même comportement. Il n'y a même plus de fonction include à mettre dans tes templates, tout est géré dans des fichiers de configuration xml.
Complètement hors-sujet, en effet...
Modérateur
Salut,

D'après ce document, ça ne me semble pas si hors sujet que ça... Smiley smile Enfin, je peux me tromper parce qu'à part écrire "Hello world !" en Java, je n'ai pas pratiqué plus... ça viendra... Smiley ravi

Je pense néanmoins que Tiles (enfin surtout l'environnement nécessaire à son fonctionnement) est un peu plus difficile d'accès pour un débutant que de faire une simple include php... Smiley lol
Modifié par koala64 (25 Dec 2006 - 15:26)