Meta description in php für jede Seite automatisch zuweisen
Ich habe verschieden webseiten und mein webmaster ist seit einiger Zeit verschwunden und hat natürlich halbfertige scripte hinterlassen.
Es geht darum, dass ich auf der index.php eine feste Meta[desc] Zuweisung habe, allerdings benötige ich auf der jeweiligen Seite eine Beschreibung der Seite zugehörig.
Beispielseite: www.holiday-locations.com
Die index.php ist wie folgt
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<meta name="robots" content="index, follow">
<meta name="language" content="<?PHP echo $lang; ?>">
<link rel="shortcut icon" href="favicon.ico">
<meta http-equiv="Content-Style-Type" content="text/css">
<link rel="stylesheet" type="text/css" href="STYLE.css">
<meta name="description" content="<?PHP echo $META['desc'][$lang]; ?>">
<meta name="keywords" content="<?PHP echo $META['keyw'][$lang]; ?>">
<?PHP
Seitentitel erstellen
$SEITENTITEL = $TITLE[$_GET['site']][$lang];
Sonderfall Titel für Suchvorlage
if($_GET['site'] == "ssearch"){ $SEITENTITEL = $TITLE['ssearch'][$_GET['sv']][$lang]; }
// Sonderfall Titel für manuelle Seite
if($_GET['site'] == "mansite"){ $SEITENTITEL = $TITLE['mansite'][$_GET['pgn']][$lang]; }
if(strlen($SEITENTITEL) < 5){ $SEITENTITEL = $TITLE[$lang]; }
?>
<title><?PHP echo $SEITENTITEL; ?></title>
in der Zeile $META['desc']['de'] wird die Beschreibung genommen für die oberste Ebene (index.php) welche ich in der Titel.php unter
$META['desc']['de'] = "xxx eingegeben habe, jetzt gibt es aber Seiten 34.php, in der Titel.php wie folgt
$META[34]['desc']['de'], eine Villa muss nun eine Beschreibung bekommen und $META muss so aussehen
$META[34121008]['desc']['de'], es gibt noch Sonderseiten, bei denen die Titel.php so aussieht
$TITLE['mansite']['holiday_accommodation_marbella']['de'] = "holiday-locations | Ferienunterkünfte Marbella"; bzw
$TITLE['ssearch'][345011]['de'] = "Die Küstenstadt Calpe befindet sich an der Ostküste Spaniens, zwischen Valencia und Alicante an der Costa Blanca ";
d.h. wo oben $META[34]['desc']['de'], müsste in diesem Falle stehen
$META['mansite']['holiday_accommodation_marbella']['desc']['de'], bzw
$META['ssearch'][345011]['desc']['de'],
wie kann ich nun eine diesen Meta[desc] und Meta[keyw] so aufbauen, dass alle Seiten den ihnen zugehörigen Text erhalten?
Es geht darum, dass ich auf der index.php eine feste Meta[desc] Zuweisung habe, allerdings benötige ich auf der jeweiligen Seite eine Beschreibung der Seite zugehörig.
Beispielseite: www.holiday-locations.com
Die index.php ist wie folgt
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<meta name="robots" content="index, follow">
<meta name="language" content="<?PHP echo $lang; ?>">
<link rel="shortcut icon" href="favicon.ico">
<meta http-equiv="Content-Style-Type" content="text/css">
<link rel="stylesheet" type="text/css" href="STYLE.css">
<meta name="description" content="<?PHP echo $META['desc'][$lang]; ?>">
<meta name="keywords" content="<?PHP echo $META['keyw'][$lang]; ?>">
<?PHP
Seitentitel erstellen
$SEITENTITEL = $TITLE[$_GET['site']][$lang];
Sonderfall Titel für Suchvorlage
if($_GET['site'] == "ssearch"){ $SEITENTITEL = $TITLE['ssearch'][$_GET['sv']][$lang]; }
// Sonderfall Titel für manuelle Seite
if($_GET['site'] == "mansite"){ $SEITENTITEL = $TITLE['mansite'][$_GET['pgn']][$lang]; }
if(strlen($SEITENTITEL) < 5){ $SEITENTITEL = $TITLE[$lang]; }
?>
<title><?PHP echo $SEITENTITEL; ?></title>
in der Zeile $META['desc']['de'] wird die Beschreibung genommen für die oberste Ebene (index.php) welche ich in der Titel.php unter
$META['desc']['de'] = "xxx eingegeben habe, jetzt gibt es aber Seiten 34.php, in der Titel.php wie folgt
$META[34]['desc']['de'], eine Villa muss nun eine Beschreibung bekommen und $META muss so aussehen
$META[34121008]['desc']['de'], es gibt noch Sonderseiten, bei denen die Titel.php so aussieht
$TITLE['mansite']['holiday_accommodation_marbella']['de'] = "holiday-locations | Ferienunterkünfte Marbella"; bzw
$TITLE['ssearch'][345011]['de'] = "Die Küstenstadt Calpe befindet sich an der Ostküste Spaniens, zwischen Valencia und Alicante an der Costa Blanca ";
d.h. wo oben $META[34]['desc']['de'], müsste in diesem Falle stehen
$META['mansite']['holiday_accommodation_marbella']['desc']['de'], bzw
$META['ssearch'][345011]['desc']['de'],
wie kann ich nun eine diesen Meta[desc] und Meta[keyw] so aufbauen, dass alle Seiten den ihnen zugehörigen Text erhalten?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 128464
Url: https://administrator.de/forum/meta-description-in-php-fuer-jede-seite-automatisch-zuweisen-128464.html
Ausgedruckt am: 22.04.2025 um 12:04 Uhr
2 Kommentare
Neuester Kommentar
... ich glaube das kannst Du in die Tonne verschieben!
... bedeutet daß Du ein Array mit 34.121.008 Elementen erzeugst - das frisst nicht nur Speicher und ist langsam - sondern kann auch schnell mal alles 'abkacken' lassen.
Den Schlüssel sollte man dann als String speichern und so ein assoziatives Array erzeugen.
was Du machen solltest, ist mal heraus zu finden was in den Arrays $META und $TITLE drin steht.
dann wird evtl. klarer wie Du die Inhalte verarbeiten musst.
Ofensichtlicht wird jede Webseite anhand der URL Parameter erzeugt und die Werte aus den Array ausgelesen.
... ich würde hier eher mit dem $_REQUEST Array arbeiten.
$META[34121008]
Den Schlüssel sollte man dann als String speichern und so ein assoziatives Array erzeugen.
$META['34121008']
//...
$META["$key"]
was Du machen solltest, ist mal heraus zu finden was in den Arrays $META und $TITLE drin steht.
echo '<pre>' . print_r($META,true) . print_r($TITLE,true) . '</pre>';
Ofensichtlicht wird jede Webseite anhand der URL Parameter erzeugt und die Werte aus den Array ausgelesen.
$_GET['site']
//...
$_GET['pgn']
//...
$_GET['sv']