|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité de passage
![]() Inscription : décembre 2011 Messages : 6 ![]() |
Bonjour,
J'ai actuellement un site, qui contient des pages principales, et des pages secondaires. Afin de pouvoir modifier le contenu de mes 7 différentes pages principales, j'ai utilisé la fonction switch de cette facon: Code :
Seulement voila. J'ai également des sous pages. Ces sous pages posséderont elles aussi le meme header, le meme footer, et le contenu se différenciera a chacune des différentes sous pages, mais toutes, auront le même fond. J'ai donc créé une balise div, qui a le meme fond chaque fond, et qui contiendra chacune de mes différentes pages. J'ai donc pensé faire un modèle, page.php, avec le code suivant: Code :
Je me rend compte qu'il y a un problème de niveau, et de parametrage, mais j'essaie d'expliquer comment j'ai pensé la construction de mon site, pour m'aider a m'eguiller sur la bonne voie. Merci. |
||||
|
|
00
|
|
|
#2 | |
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
Citation:
car je ne comprends rien à ce que tu veux faire.
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
|
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : décembre 2011 Messages : 6 ![]() |
Je m'en doutai un peu.
pour faire un peu plus simple, si j'y arrive: d'abord voici la construction de mon site http://www.senzeo.net/WEBSITE2/index.php j'ai donc ma page index.php. dans celle ci j'y inclue: header.php content1.php content2.php footer.php j'ai utilisé la fonction switch pour modifier le contenu de content1, qui sera different en fonction de la page appelé. jusque la tout va bien. la ou cela se complique c'est concernant mes sous pages. toutes sont construites sur une meme base, tout du moins concernant header.php et footer.php. j'ai donc les pages content1.php et content2.php qui s'enlèvent, pour laisser place a ma page.php. c'est donc dans page.php, que j'ai inséré à nouveau une balise switch, qui appellera la page souhaité, par exemple, la page news.php, ou encore contact.php. J'espère que j'ai pu expliquer un peu plus concrètement ce que je souhaiterai faire. Merci. C'est en me relisant que je m'aperçois qu'il y a un truc qui cloche dans la construction de mon site lol. |
|
|
00
|
|
|
#4 |
|
Invité régulier
![]() Inscription : janvier 2012 Messages : 13 ![]() |
Bonjour,
Si je comprends bien, votre site adoptera une structure arborescente du style :
Vous gagneriez sans doute en clarté à créer fichier cadre pour chaque espace du site (nowplaying, shows...), vous vous affranchirez du même coup de votre premier niveau de switch. La solution la plus commode, à mon avis (qui n'est sans doute pas le meilleur au monde, croyez-moi) est de fragmenter davantage votre structure de fichiers : vous dites que le site possédera 7 espaces, je ferais donc 7 fichiers différents, le seul include conditionnel qui vous reste à ce niveau, c'est le contenu informatif de la page. Vous pouvez même pousser le raisonnement à son extrémité et prévoir un fichier par page à afficher. Qu'en pensez-vous ? |
|
|
00
|
|
|
#5 |
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
Quand tu dis "fichier cadre", ça veut dire "frame" ? (En général, cadre=frame). Or les frames, c'est néfaste au référencement et de plus, si on veut faire un lien sur une page, l'URL récupérée ne correspond qu'au contenu de la frame et ignore le "container", donc l'idée du switch n'est peut-etre pas si mauvaise...
Par contre, je n'ai pas encore tout compris : c'est quoi les pages et les sous-pages ? Peux-tu donner un exemple à partir de tes fichiers ? De plus, tu parles de "fond" d'une div. C'est quoi pour toi le fond ?
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
|
|
00
|
|
|
#6 |
|
Invité régulier
![]() Inscription : janvier 2012 Messages : 13 ![]() |
Alors désolé pour l'approximation, l'usage des frames m'est tellement étranger que je n'ai même pas pensé à la possibilité de confusion.
Pour ma proposition de faire plusieurs fichiers, elle repose simplement sur le constat que plutôt que de passer un paramètre via l'url et une variable GET, autant directement pointer vers un fichier dédié à l'affichage d'une partie. On évite ainsi de composer un fichier tentaculaire qui gère l'ensemble du site et fait même le café. Sinon, j'ai jeté un œil sur le lien et je ne voit pas trop ce que sont les sous-pages... |
|
|
00
|
|
|
#7 | ||||||
|
Expert Confirmé
![]() ![]() |
Bonjour,
Je procéderais autrement. Si tu as un gabarit de page standard, tu peux faire ainsi : template.php Code :
Code :
En gros tu codes tes blocs de manière indépendante et tu les assembles dans des pages de rendu (autant de template que tu veux). J'espère avoir été clair. Pour te caler ça sur ton arborescence : Tu as une route .../shows/archive.php Dans archive.php, tu mets : Code :
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
||||||
|
00
|
|
|
#8 |
|
Membre chevronné
![]() Christele Inscription : novembre 2009 Messages : 661 ![]() |
Bonjour,
A lire ce sujet je ferais trois remarques Coté lisibilitée et nombre de lignes le if est de loin préférable au switch donc Code :
if ($_GET['page']=="nowplaying") include ("content1.php"); Troisième point, si tu as 10 niveaux de include Tu semble avoir perdu de vue que ton chemin de toute la chaine des includes reste celui a indiquer pour atteindre un des php s'il était appelé par la feuille principale ! A+ christele |
|
00
|
Copyright © 2000-2012 - www.developpez.com