Je nach angefragter Url einen anderen Titel einfügen
Hi,
wie funktioniert das, wenn ich z.b. ebay.de aufrufe das es dann beim header ebay anzeigt und wenn ich z.b. google.de aufrufe im header google anzeigt, aber das die gleiche index ist?
also 2 urls leiten zur gleiche webseite und sollen unterschiedlichen headertext anzeigen.
danke
Mit freundlichen Grüßen
markus
wie funktioniert das, wenn ich z.b. ebay.de aufrufe das es dann beim header ebay anzeigt und wenn ich z.b. google.de aufrufe im header google anzeigt, aber das die gleiche index ist?
also 2 urls leiten zur gleiche webseite und sollen unterschiedlichen headertext anzeigen.
danke
Mit freundlichen Grüßen
markus
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 337836
Url: https://administrator.de/contentid/337836
Ausgedruckt am: 21.11.2024 um 22:11 Uhr
11 Kommentare
Neuester Kommentar
Moin,
30 Sekunden JS:
Jetzt setzt du noch vorher einen default tag und das wars schon.
Probiere es mal aus, ich habe das mal eben aus dem Kopf herunter geschrieben. Sollte aber klappen.
Referenzen:
https://www.w3schools.com/jsref/prop_doc_url.asp
https://www.w3schools.com/jsref/met_document_getelementsbytagname.asp
Viel Spaß
Gruß
Chris
30 Sekunden JS:
if (window.location.hostname = "example.com")
document.getElementsByTagName("TITLE").innerHTML = "Anderer Titel";
Jetzt setzt du noch vorher einen default
<title>
Probiere es mal aus, ich habe das mal eben aus dem Kopf herunter geschrieben. Sollte aber klappen.
Referenzen:
https://www.w3schools.com/jsref/prop_doc_url.asp
https://www.w3schools.com/jsref/met_document_getelementsbytagname.asp
Viel Spaß
Gruß
Chris
Oh sorry,
habe erst jetzt gesehen, dass du es in PHP haben wolltest:
Auch hier ist die Lösung nicht getestet und aus dem Kopf zusammengeschrieben, aber sollte funktionieren.
Referenz:
https://secure.php.net/manual/en/reserved.variables.server.php
habe erst jetzt gesehen, dass du es in PHP haben wolltest:
<?php
if ($_SERVER[HTTP_HOST] = "example.com")
echo "<title>Anderer Titel</title>";
else
echo "<title>Standard titel</title>";
?>
Auch hier ist die Lösung nicht getestet und aus dem Kopf zusammengeschrieben, aber sollte funktionieren.
Referenz:
https://secure.php.net/manual/en/reserved.variables.server.php
Moin,
also wenn du es auf dem Stand der Zeit machen willst, solltest du dafür ein Templating nutzen. Schau dir mal Syphony oder Twig an.
Aber natürlich kannst du das genauso machen, wie mit dem Titel.
Sollte dennoch funktionieren.
Gruß
Chris
also wenn du es auf dem Stand der Zeit machen willst, solltest du dafür ein Templating nutzen. Schau dir mal Syphony oder Twig an.
Aber natürlich kannst du das genauso machen, wie mit dem Titel.
Willkommen bei
<?php
if ($_SERVER[HTTP_HOST] = "example.com")
echo "FirmaA";
else
echo "FirmaB";
?>
!
Sollte dennoch funktionieren.
Gruß
Chris
leitet alles auf eine index
willst du verschiedene "Seiten" aufrufen? Oder willst du unterschiedliche Titel haben...
mit .htaccess könnte man auch auf andere "index" dateien umleiten... das wäre aber alles andere als Dynamisch -> da kannst du auch gleich deine Domains "woanders" hinrouten!
Ansonten wie oben beschrieben, direkt im Script erkennen von welcher URL die Seite aufgerufen wurde und dann Dynamisch mit Javascript den Titel verändern! Oder mit PHP den Titel gleich setzen <- könnte aber mit Caching probleme geben... würde mir da mal
<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="cache-control" content="no-cache" />
Zu Herzen nehmen, falls der Titel beständig bleibt...
oder Sprichst du nicht von "Titel" sondern nur von Strings welche auf Buttons sind?
das würde dann mit php etwa so aussehen
echo "<button>$dynamischerText</button>";
Hallo Snowboarder1994,
hier geht es um den Inhalt von <header>
https://wiki.selfhtml.org/wiki/HTML/Seitenstrukturierung/header
und nicht um <head><title></title>...
sehe ich das richtig?
index.php
Falls Du doch den <Title> meinst, musst Du es entsprechend anpassen.
Gruß Frank
hier geht es um den Inhalt von <header>
https://wiki.selfhtml.org/wiki/HTML/Seitenstrukturierung/header
und nicht um <head><title></title>...
sehe ich das richtig?
index.php
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8">
<title>Der Titel ist hier statisch</title>
</head>
<body>
<header>
<?php
$begrüßung="Standardbegrüßung";
if ($_SERVER['SERVER_NAME'] == "www.de") {$begrüßung="Herzlich Willkommen bei www";};
if ($_SERVER['SERVER_NAME'] == "ww1.de") {$begrüßung="Herzlich willkommen bei ww1";};
echo "\t\t\t".$begrüßung."\n";
?>
</header>
Hier steht der Inhalt der Seite.<br>
Der ist für alle gleich.
</body>
</html>
Falls Du doch den <Title> meinst, musst Du es entsprechend anpassen.
Gruß Frank
Hallo Snowboarder1994,
da Du im Titel des Beitrags nach "Titel" fragst und im Beitrag nach "Header" und in Deinen Beschreibungen es dann doch wieder nach "Titel" aussieht, hab ich jetzt beides in den Beispielcode aufgenommen.
Es ist übrigens auch nicht hilfreich Deine Beispielnamen in jeder Antwort anders zu wählen.
1. ebay.de und google.de
2. link1.de und link2.de
3. www.de, ww1.de und ww2.de
Das trägt eher zur Verwirrung bei, denn zur Klärung.
In meinem Beispielcode hab ich mich für die Benennung von 2. entschieden.
Ich gehe übrigens davon aus dass Deine index.php sowohl mit als auch ohne "www" erreicht werden kann.
link1.de
www.link1.de
link2.de
www.link2.de
Das wären dann vier Wege zur selben index.php.
index.php
Anmerkung:
Der Code bei "default" ist weitgehend "Kosmetik", bis auf die Wertzuweisungen für die Variablen.
"default" wird ausgeführt, wenn keiner der "case"s der Switch-Anweisung (Fallunterscheidung) zutreffend war.
Gruß Frank
da Du im Titel des Beitrags nach "Titel" fragst und im Beitrag nach "Header" und in Deinen Beschreibungen es dann doch wieder nach "Titel" aussieht, hab ich jetzt beides in den Beispielcode aufgenommen.
Es ist übrigens auch nicht hilfreich Deine Beispielnamen in jeder Antwort anders zu wählen.
1. ebay.de und google.de
2. link1.de und link2.de
3. www.de, ww1.de und ww2.de
Das trägt eher zur Verwirrung bei, denn zur Klärung.
In meinem Beispielcode hab ich mich für die Benennung von 2. entschieden.
Ich gehe übrigens davon aus dass Deine index.php sowohl mit als auch ohne "www" erreicht werden kann.
link1.de
www.link1.de
link2.de
www.link2.de
Das wären dann vier Wege zur selben index.php.
index.php
<?php
$servername=$_SERVER['SERVER_NAME'];
switch($servername)
{
case ("link1.de"):
case ("www.link1.de"):
$title_ausgabe="Link 1";
$header_ausgabe="Herzlich Willkommen bei Link 1";
break;
case ("link2.de"):
case ("www.link2.de"):
$title_ausgabe="Link 2";
$header_ausgabe="Herzlich Willkommen bei Link 2";
break;
default:
$server_ausgabename=$servername;
// "www." am Anfang entfernen, falls vorhanden
if (0 === strpos($server_ausgabename, "www.")) {$server_ausgabename=substr($server_ausgabename, 4);};
// Ersten Buchstaben in groß
$server_ausgabename=ucfirst($server_ausgabename);
$title_ausgabe="Startseite von ".$server_ausgabename;
$header_ausgabe="Herzlich Willkommen bei ".$server_ausgabename;
break;
};
?>
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8">
<title><?php echo $title_ausgabe; ?></title>
</head>
<body>
<header>
<?php echo $header_ausgabe; ?><br>
</header>
Hier steht der Inhalt der Seite.<br>
Der ist für alle gleich.
</body>
</html>
Der Code bei "default" ist weitgehend "Kosmetik", bis auf die Wertzuweisungen für die Variablen.
"default" wird ausgeführt, wenn keiner der "case"s der Switch-Anweisung (Fallunterscheidung) zutreffend war.
Gruß Frank