spainrentals
Goto Top

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?

Content-Key: 128464

Url: https://administrator.de/contentid/128464

Printed on: April 19, 2024 at 03:04 o'clock

Member: nxclass
nxclass Nov 03, 2009 at 08:26:14 (UTC)
Goto Top
... ich glaube das kannst Du in die Tonne verschieben!

$META[34121008]
... 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.
$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>';  
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.
$_GET['site']  
//...
$_GET['pgn']  
//...
$_GET['sv']  
... ich würde hier eher mit dem $_REQUEST Array arbeiten.
Member: Spainrentals
Spainrentals Nov 03, 2009 at 15:17:53 (UTC)
Goto Top
Mit dieser Version
<meta name="description" content="<?PHP echo $META[$_GET['site']]['desc'][$lang]; ?>">
und in der Titel.php diese Angabe
$META[34121008]['desc']['de'] = "Golfvilla mit beheiztem Pool, Fitness Raum, im Golf valley Nueva Andalucia, Puerto Bansu, Marbella zu mieten";
kann ich im Quelltext diese Beschreibung sehen, also alles perfekt
dies funktioniert auch bei
$META[341]['desc']['de'] = "Holiday-locations bietet Ihnen eine reiche Auswahl an Ferienobjekten vom einfachen Studio, über Ferienwohnungen mit 1, 2 3 und 4 Schlafzimmern, Penthouse, Reihenhaus, Bungalow, Ferienhäuser, Villen und Luxusvillen mit Privatpool, teilweise sogar mit Tennisplatz, für einen unvergesslichen Urlaub in Andalusien.";
und
$META[34]['desc']['de'] = "Holiday-locations bietet Ihnen eine reiche Auswahl an Ferienobjekten vom einfachen Studio, über Ferienwohnungen mit 1, 2 3 und 4 Schlafzimmern, Penthouse, Reihenhaus, Bungalow, Ferienhäuser, Villen und Luxusvillen mit Privatpool, teilweise sogar mit Tennisplatz, für einen unvergesslichen Urlaub in Spanien.";
allerdings nicht bei
$META['desc']['de'] = "Holiday-locations bietet Ihnen eine reiche Auswahl an Ferienobjekten vom einfachen Studio, über Ferienwohnungen mit 1, 2 3 und 4 Schlafzimmern, Penthouse, Reihenhaus, Bungalow, Ferienhäuser, Villen und Luxusvillen mit Privatpool, teilweise sogar mit Tennisplatz, für einen unvergesslichen Urlaub in Spanien, Frankreich, Italien, Deutschland, England, Österreich und der Schweiz. Stöbern Sie in aller Ruhe, träumen Sie und vor allem buchen Sie, bevor es andere tun ... suchen Sie nach Ihrem freien Datum, füllen Sie das Reservierungsformular aus, bestätigen Sie die Buchung mittels Ihrer Anzahlung und … das ist alles, Ihr Urlaubsaufenthalt ist gebucht"; == dies wäre die index.php Ebene
und auch nicht bei
wenn es sich um die spezieelen Seiten handelt
$TITLE['ssearch'][34609]['de'] = "Torrevieja liegt an der Costa Calida, Torrevieja ist eine Stadt im Südosten von Spanien ";
$TITLE['mansite']['golf']['de'] = "Holiday-locations - Golfplätze - Marbella, Costa del Sol, Spanien";