Hi!
Einige Anmerkungen vorweg:
Um deine Frage einigermaßen treffend zu beantworten, wäre es u.U. hilfreich, etwas über die Struktur deiner Website zu erfahren und wie du diese bisher (serverseitig) umgesetzt hast.
Generell sehe ich es bspw. nämlich so, dass man idealerweise gar keine Breadcrumb Navigation braucht, weil die Website eine so flache Hierarchie hat, dass diese schlicht überflüssig ist.
Da das aber nicht immer (sinnvoll) machbar ist, gibt es also durchaus auch Fälle, wo sie angebracht ist. Dabei sollte man dann aber auf keinen Fall auf zusätzliche Techniken bauen, die außerhalb des eigenen Einflussbereichs liegen, wie bspw. Javascript.
Wenn man das rein serverseitig machen möchte, wäre eine elgante Variante den Pfad einfach via URL mit zuliefern. Vorteil weiterhin wäre, das man die URL kopieren kann und wieder auf der gleichen Seite landet.
Hätte aber doch auch den Nachteil, dass beim Aufrufen der Site über eine Domain standardmäßig die index.xx-Datei ohne Pfad-Angabe für die Adressleiste aufgerufen wird (zmdst. ist das bei Strato-Domains so)
Das verstehe ich nicht ganz!? Könntest du bspw. mod_rewrite nutzen? Welche Einstellungen per .htaccess kannst du für den Webspace vornehmen?
Woher weißt du denn, welche "Unterseite" gerade angefordert wurde? Und entspricht deine Site-Struktur 1:1 deiner File-Struktur auf dem Server?
Und wenn du eine mehrstufige Breadcrumb Navigation hast, existieren denn dann überhaupt alle Unterseiten?
Um dem aus dem Weg zu gehen, könnte man statt 'echo' die Inhalte in einer Variable speichern. Das Element das dann Später die Breadcrumb-Navigation bekommen soll bekommt als inhalt bspw. ()ssdfsdfsfds/()GFSDFAE§. Sprich irgendetwas das durch php nicht interpretiert ist und garantiert einmalig auf der Seite ist. Anschließend kann man diese Kennzeichnung mittels Replace ersetzen und dann die Variable mittels 'echo' ausgeben.
Das Prinzip ist mir so einigermaßen klar, jedoch verstehe ich die Durchführung nicht.
Ich soll also in der Unterseite eine Variable mit (auf der Seite) einmaligen Inhalt notieren, die mittels str_replace den richtigen Inhalt bekommt?
Oder aber eine Funktion in die head.php einbauen, die den Breadcrumb Trail in Abhängigkeit von der angeforderten Seite generiert.
Die Variable muss irgendwie von der Unterseite zum Head übergeben werden, also hab ich gegooglet und bin auf SESSION gestoßen, die dann zur Verwendung kommen.
Vielleicht sollte genau das mit deiner Idee (die ich wohl missverstanden habe) umgangen werden. Jetzt werden zwar die Variablen weitergegeben (auch ohne die str_replace-Funktion, die ja sowieso eigentlich einen anderen Zweck erfüllen sollte), wechselt man jedoch zu einem Menüpunkt, bleibt der vorherige in der Adressleiste bestehen. Erst wenn ich wieder auf den neuen Menüpunkt nochmals klicke, aktualisiert er sich auch in der Adressleiste.
Sessions sind in diesem Kontext imho genauso untauglich wie die Verwendung von Javascript.
Ich arbeite an den Kram jetzt seit mehreren Stunden, kriege aber außer Kopfschmerzen nicht den gewünschten Effekt. Könntest du mir das Prinzip bitte nochmal vereinfachter und die Durchführung ausführlicher erklären?
Es soll ja auch diverse Scripte für Wikis, Blogs, etc. geben, wo so etwas enthalten ist. Mal zu gucken, wie andere solch eine Geschichte umgesetzt haben, wäre ja auch eine Möglichkeit. Zugegebenermaßen nicht die einfachste & schnellste Variante, aber ... .
Mir ist die Umsetzung egal, ich erzähl dir auch was zu JavaScript wenn du das wissen möchtest ;)
Die Zielgruppe der Website hat standardmäßig Javascript aktiviert.
Ich halte es grundsätzlich für den verkehrten Ansatz im Web für eine bestimmte Zielgruppe zu entwickeln. Bei Intranet Anwendungen u.ä. mag das ja anders sein.
Wenns damit einfacher zu realisieren ist, würde ichs gern wissen :)
Einfacher ist immer relativ, aber auch nicht der entscheidende Punkt. Sondern vielmehr sollte die Frage lauten, welches die geeignetste Technik für die Umsetzung eines Vorhabens ist.
Gruß Gunther