Tout votre site en une seule page : index.php?module=trucbidule ...

Contenu du snippet

Ce script permet grâce à des includes de mettre tout votre site en une seule page. Comment ? grâce à la fonction include. Cette fonction permet d'inclure le code d'un fichier dans la page l'appelant.

Il vous paraitra peut-être un peu compliqué, mais il est très facile et simplifie grandement les choses.

Source / Exemple :


// votre fichier index.php :

<?php

include "header.php";

// Récupération des variables d'url (méthode GET ou POST)
if (isset($_REQUEST['module']))
  $module = $_REQUEST['module'];
else
  $module = "accueil";
if (isset($_REQUEST['page']))
  $page = $_REQUEST['page'];
else
  $page = "index";

if (file_exists("modules/$module/$page.php") == true) {
  include "modules/$module/$page.php";
} elseif (is_dir("modules/$module/")) {
  include "modules/$module/index.php";
} else {
  include "modules/accueil/index.php";
  $module = "accueil";
}

include "footer.php";
?>

// le fichier header :

<html>
<head>
<title>mon titre</title>
</head>
<html>
Menu :
<a href="index.php?module=lien1">lien1</a>
<a href="index.php?module=lien1&page=page2">lien1>page2</a>

// le fichier footer.php :
<br><br>
Tous droits réservés blablabla
</body>
</html>

// un fichier quelconque de contenu

voilà le contenu de cette page, qui sera inséré entre le fichier header et le fichier footer, inclus à partir de la page index.php?module=marubrique

Conclusion :


le fonctionnement est simple : le site est articulé en rubriques pouvant contenir plusieurs pages.

on appelle la page index.php?module=marubrique&page=mapage si on veut aller à marubrique > mapage
on appelle la page index.php?module=marubrique si on veut aller à marubrique
on appelle index.php pour aller à la rubrique accueil

au niveau des fichiers, tu as un répertoies modules/ dans lequel pour chaque rubrique tu as un fichier de son nom contenant au minimum une page index.php.
lorsque le lien index.php?module=marubrique est appelé, le script inclus (s'il existe) le fichier modules/marubrique/index.php
lorsque le lien index.php?module=marubrique&page=mapage est appelé, le script inclus le fichier (s'il éxiste) modules/marubrique/mapage.php

si le lien index.php est appelé ou si le module demandé n'éxiste pas, c'est le fichier modules/accueil/index.php qui est inclus.

avant et après l'inclusion du fichier du contenu de la page sont inclus les fichiers header.php et footer.php, correspondants aux fichiers de structure du site, le haut de page, avec menu, titre, etc et le bas de page, avec les copyrigths, contact, ...

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.