Hallo,
ich suche eine Möglichkeit, den Menütext zu ändern.
Falls jemand eingeloggt ist, soll der subtitle statt dem title angezeigt werden.
Wie kann man das mit TypoScript machen?
Gruß
Frank
PS: es soll aber nur der Text von einer bestimmten Seite geändert werden.
Hallo,
meine Idee ist folgende:
if(login) {
pages[55][title] = pages[55][subtitle]
}
Natürlich kann es so NICHT funktionieren, das ist mir klar, aber sicherlich ist es der einfachste Ansatz, falls es irgendwie auf diese Art zu lösen ist.
Leider fehlt mir die genaue Syntax und der Ort, wo das ganze rein muß.
Gruß
Frank
Danke christina83,
leider stehe ich immer noch auf dem Schlauch. :o
Wie kann ich entscheiden, von welcher Seite der title und von welcher Seite der subtitle genommen wird?
Ich erlaube mir, einen Teil der Quelle von eurer Seite hier zu übernehmen.
1 = TMENU
1.NO.stdWrap.cObject = COA
1.NO.stdWrap.cObject {
10 = TEXT
10.field = title
<< if seitenID = 55 && login = true >>
10.field = subtitle
<< end if >>
10.wrap =|
}
Mir fehlt die Möglichkeit, im Einzelfall zu entscheiden, was angezeigt werden soll.
Meine Frage habe ich mit << ... >> deutlicher gemacht, wo wohl noch etwas eingebaut werden muß.
Vielleicht kannst du mir noch einen Tipp geben.
Gruß
Frank
Diese Variante wäre auch denkbar ...
1 = TMENU
1.NO.stdWrap.cObject = COA
1.NO.stdWrap.cObject {
10 = TEXT
10.field = title
<< if login = true >>
10.field = subtitle || title
<< end if >>
10.wrap =|
}
... nur wie setzt man es um ? #angry#
Gruß
Frank
Ich habe es nun mit einer UserFunc gemacht:
<?
class user_evermenu {
function do_evermenu ($menuArray,$conf) {
GLOBAL $GLOBALS;
if ($GLOBALS["TSFE"]->loginUser) {
$anzahl = count($menuArray);
for($i = 0; $i < $anzahl; $i++) {
if($menuArray[$i]["uid"] == "55") $menuArray[$i]["title"] = $menuArray[$i]["subtitle"];
}
}
return $menuArray;
}
}
?>
Gruß
Frank