Il faudra alors modifier la ligne qui génère les liens :
echo "<li><a href='" . BASE_URL . "/index.php?id=$pageID'>$pageTitle</a></li>";
Vous pouvez soit ajouter le titre en tant que &title= séparé et inutilisé paramètre, qui est une bonne astuce pour éviter d'avoir à modifier quoi que ce soit d'autre :
echo "<li><a href='" . BASE_URL . "/index.php?id=$pageID&title=$pageTitle'>$pageTitle</a></li>";
Ou générer 123+title liens :
echo "<li><a href='" . BASE_URL . "/index.php?id=$pageID+$pageTitle'>$pageTitle</a></li>";
Cela nécessiterait d'adapter le code réel du répartiteur "cms", car il doit séparer l'identifiant et le titre du paramètre $_GET.
Ou même remplacer l'ensemble index.php?id= avec juste le titre :
echo "<li><a href='" . BASE_URL . "/$pageTitle'>$pageTitle</a></li>";
Ce qui nécessiterait à son tour de déployer un .htaccess règle (quelque chose comme routage d'URL htaccess pour PHP MVC ? ). Et vous auriez à modifier le index.php script à nouveau pour rechercher le id de title . Ce qui, encore une fois, ne fonctionnerait que si les titres de votre base de données étaient tous uniques.
P.S. :Vous devriez également utiliser urlencode($pageTitle) . Et htmlspecialchars() sur le $pageTitle qui devient le texte du lien.