Einzelnen Beitrag anzeigen
  #4  
Alt 16.07.07, 15:53
deluxe deluxe ist offline
Forum Zuschauer
 
Registriert seit: 14.07.07
Alter: 24
Beiträge: 6

Also ich konnte das Problem nun etwas eleganter behandeln als mi externen URLs in einem redundanten Menüzweig innerhalb jeder Domain, die dieses globale Menü anzeigen soll. Ich hab schon davor mit einer gmenu_layers.php gearbeitet und einer IProcFunc.
Mit Hilfer dieser Dateien konnte ich ein prefix per TS zuweisen, welches in meinem Fall aus der relativen URL eine absolute URL mit der gewünschten Domain macht.

Hier Auszüge aus dem Typoscript:

Konstanten:
prefixURL=http://www.example.com

Setup:
page.includeLibs.gmenu_layers = fileadmin/scripts/gmenu_layers.php
page.includeLibs.gmenu_modifier = fileadmin/scripts/IProcFunc.php

temp.gmenulayers= HMENU
#mainitems, erstellt über gmenu_layer.php
temp.gmenulayers.1.prefixURL={$prefixURL}
#subitems, simples gmenu, aber vor dem rendern modifiziert durch IProcFunc.php
temp.gmenulayers.2 = GMENU
temp.gmenulayers.2.prefixURL={$prefixURL}
temp.gmenulayers.2{
IProcFunc = user_gmenu_modifier->modifyMenu
...

In der IProcFunc zur Modifizierung meines Submenüs (GMENU)

IProcFunc.php:

class user_gmenu_modifier {
...
function modifyMenu($I,$conf) {
//Link überschreiben, mit prefix+link
$I["linkHREF"]["HREF"]=$conf["parentObj"]->mconf["prefixURL"].$I["linkHREF"]["HREF"];
//da die IProc Funktion erst nach dem erstellen der ATags angewendet wird, muss hier
//ATag_begin erneut geschrieben werden
$I['parts']['ATag_begin'] = '<a '.t3lib_div::implodeAttributes($I['linkHREF'],1).' '.$I['val']['ATagParams'].$I['accessKey']['code'].'>';



gmenu_layers.php:

class tslib_gmenu_layers extends tslib_gmenu {
....
...
..
//im Unterschied zur IProc Funktion steht hier eine Methode zur Verfügung, die vor derm
//erstellen der ATag_begin, aufgerufen wird. Hier lediglich den link neu gesetzt.
function extProc_beforeLinking($key) {
$this->I["linkHREF"]["HREF"]=$this->mconf["prefixURL"].$this->I["linkHREF"]["HREF"];
....



Verstanden? Ich glaub keienr ders nicht braucht

Viele Grüße
Mit Zitat antworten