Salve a tutti. Vorrei sottoporre alla Vostra attenzione questo problema:
Vorrei rendere dinamico il meta tag TITLE per visualizzare contenuti diversi a seconda delle pagine caricate. A tale scopo ho creato un file config.php richiamato sopra l'header del template, dove ho inserito due switch
Codice PHP:
<?php
// CONFIG.PHP
$pagina = isset($_GET["pagina"]) ? $pagina=$_GET["pagina"] : $pagina="home";
// PRIMO SWITCH
switch ($pagina) {
case ($pagina == "home"):
$title = "sagre paesane";
break;
case ($pagina == "notizie-delle-sagre-2015"):
$title = "notizie delle sagre 2015";
break;
}
$subpagina = isset($_GET["sezione"]) ? $sezione=$_GET["sezione"] : $sezione="notizie-brevi-sagre";
// SECONDO SWITCH
switch ($subpagina) {
case ($pagina == "notizie-delle-sagre-2015" && $subpagina == "sagra-delle-cozze"):
$title = "sagra delle cozze";
break;
case ($pagina == "notizie-delle-sagre-2015" && $subpagina == "sagra-del-pomodoro"):
$title = "sagra del pomodoro";
break;
}
?>
<!DOCTYPE html>
<html lang="it">
<head>
<title><?php echo $title; ?></title>
</head>
<body>
.....
CONTENUTO DELLA PAGINA
.....
</body>
</html>
notizie-delle-sagre-2015.php contiene
Codice PHP:
<?php
include("notizie-delle-sagre-2015/$sezione.php");
?>
Le URL del sito sono state riscritte con mod_rewrite in htaccess.
Il codice del primo switch funziona benissimo, visualizzando i titoli dinamici, per l'URL /sagre/notizie-delle-sagre-2015/
Il codice del secondo switch che deve gestire l'URL /sagre/notizie-delle-sagre-2015/sagra-delle-cozze/ non funziona in quanto, nelle pagine richiamate, non viene riconosciuta più la variabile $title e di conseguenza viene visualizzato questo errore:
<title><br />
<b>Notice</b>: Undefined variable: title in <b>c:\programmi\easyphp1-8\www\notizie\include\template\header.php</b>
on line <b>4</b><br />
</title>
Se qualcuno mi potesse spiegare dove sbaglio, ne sarei molto grato.