Zentrale Linkliste mit Übergabeparameter...?
Stefan
- javascript
Hallo Experten,
ich suche schon seit längerem eine einfache Lösung für folgendes Problem:
In einer html-Seite soll eine Linkliste zu externen Seiten integriert werden. Da dies auf vielen Seiten mit jeweils unterschiedlichen Links geschehen soll und die Links ja auch gepflegt werden müssen möchte ich alle Links zentral in einer Datei verwalten. Mir schwebt vor, die Links aus dieser Datei mit einem Parameter aufzurufen, woraufhin nur die Teile der Links übergeben werden, die mit diesem Parameter markiert sind.
Da ich soetwas noch nicht programmiert habe und auf Anhieb hier keine vergleichbare Lösung finden konnte frage ich einfach mal im Forum :) Vielleicht hat ja jemand von Euch schon sowas realisiert oder kann mir Tipps geben...
Stefan
Stefan,
JavaScript ist für dein Vorhaben ungeeignet, da das nicht bei allen Nutzern (u.a. Clients) läuft.
Du benötigst dafür eine serverseitige Technik (PHP o.a.)
Live long and prosper,
Gunnar
Hallo Stefan,
Vielleicht hat ja jemand von Euch schon sowas realisiert oder kann mir Tipps geben...
Du kannst alle Deine Links in einem 2D-Array speichern. Dieses Array schreibst Du in eine externe JS Datei und rufst diese in jeder HTML Seite auf, in der Du die Links benötigst.
Da Du gesagt hast, das nicht auf allen Seiten immer alle Links kommen sollen, muss Deine Array so aufgebaut serin, das es bestimmte Links katalogisiert.
Also irgendwie so:
urls[0][0] = "http://www.seitenadresse1.de";
urls[0][1] = "http://www.seitenadresse2.de";
urls[0][2] = "http://www.seitenadresse3.de";
urls[0][3] = "http://www.seitenadresse4.de";
urls[1][0] = "http://www.seitenadresse5.de";
urls[1][1] = "http://www.seitenadresse6.de";
urls[1][2] = "http://www.seitenadresse7.de";
in der HTML Seite definierts Du nun eine Variable, die den ersten Index abrfragt, also 0 oder 1 in meinem Beispiel. Den zweiten Index lässt Du bspw. über eine Schleife ermitteln...
Mit freundlichem Gruß
Micha
Danke Micha,
das ist ja mal ein erster guter Hinweis :) Allerdings habe ich immer noch keinen Plan, wie ich es genau machen soll haha. Aber ich werde mal ein wenig herumrecherchieren.
Wenn noch jemand konkretere Hinweise hat, oder eine Webseite wo ich mir das mal anschauen könnte, wäre ich sehr dankbar!!
Stefan
das ist ja mal ein erster guter Hinweis :)
Stefan,
Auch wenn du es (noch) nicht verstehst: das war der zweite gute Hinweis.
Du kannst das auf eine serverseitige Technik (z.B. PHP) übertragen; aber um diese kommst du nicht drumherum.
Live long and prosper,
Gunnar
Hallo Stefan,
Auch wenn du es (noch) nicht verstehst: das war der zweite gute Hinweis.
Ja, dem muss ich auch zustimmen.
Zurück zu Deinem Problem...
Du erstellst, wenn es den so einfach sein soll/es ausreichend ist, ein 2D-Array wie in selfhtml beschrieben.
Zuvor musst Du Dir überlegen, auf welcher Seite welche Links angezeigt werden sollen - diese gruppierst Du mit dem ersten Index.
Das ergebnis ist wie bereits beschrieben:
urls[0][0] = "http://www....de";
urls[0][1] = "http://www....de";
urls[0][2] = "http://www....de";
urls[1][0] = "http://www....de";
urls[1][1] = "http://www....de";
urls[2][0] = "http://www....de";
urls[2][1] = "http://www....de";
urls[2][2] = "http://www....de";
urls[2][3] = "http://www....de";
//usw...
Das lagerst Du in einem externen Datei aus und bindest das Script auf den Seiten ein, wo Links angezeigt werden sollen.
In den HTML Seiten musst Du nun den Index (und zwar den ersten) definieren...
<script src="urls.js" type="text/javascript"></script>
<script type="text/javascript">
var index = 2;
for (var i=0; i<urls[index].length; i++){
document.write(urls[index][i] + "<br />\n");
}
</script>
So in der Art müsste es gehen und ließe sich auch auf ein PHP-Script übertragen.
Alternativ wäre auch ein Assoziative Array möglich, welches Du an die html-Dateien bindest --> urls["startseite.html"][0] = "...";
Du könntest die Adresse auslesen und dann entsprechend wie oben arbeiten, wenn Du noch eine Prüfung - ob es das Feld gibt - durchführst.
Mit freundlichem Gruß
Micha