Externe Links und Shortcuts direkt im Menü

Übermittlung Ihrer Stimme...
Bewertungen: 4.0 von 5. 7 Stimme(n).
Klicken Sie auf den Bewertungsbalken, um diesen Artikel zu bewerten.

TYPO3 erstellt für Seiten vom Typ Shortcut und für Seiten vom Typo External Link mit der Standardeinstellung keinen direkten Link zur externen Seite / zum Ziel des Shortcuts.

Durch das Umstellen dieses Verhaltens funktioneren auch der ACT und CUR Zustand bei Seiten vom Typ Shortcut.

 

Dieses Verhalten kann man mit einem CASE Object im stdWrap eines Menuitems anpassen:

 

lib.menu=HMENU
lib.menu{
  1=TMENU
  1.wrap=<ul>|</ul>
  1.NO {
                   # hier nicht verlinken, ansonsten bekommt man doppelte <a> tags
    doNotLinkIt = 1
    wrapItemAndSub=<li>|</li>
    stdWrap.cObject = CASE
    stdWrap.cObject {
      key.field = doktype
      default = TEXT
      default {
        typolink.parameter.field = uid
        field = title
        stdWrap.htmlSpecialChars = 1
      }
      			# 4 = shortcut
      4 = TEXT
      4 {
        field = title
        typolink.parameter.field = shortcut
      }
      			# 3 = external url
      3 = TEXT
      3 {
        field = title
        typolink.parameter.field = url
        typolink.extTarget.field = target
      }
       
    }
  }
}


Comments


Eazy, 19-01-08 14:47:
Hm...schöne Sache, wie kann ich aber ein innerWrap für die entstehenden Links bewerkstelligen? Dat geit nicht, oder?

eazy
Eazy, 19-01-08 16:42:
Hab's schon, bspw. für 4:
4 = TEXT
4 {
field = title
typolink.parameter.field = shortcut
innerWrap = |"bla bla bla"
}
Mark, 09-11-10 15:53:
Kann jemand bestätigen, dass der ACT State in TYPO3 4.4.4 nicht mehr funktioniert?

Ich hab' einen Workaround für die ersten beiden Ebenen.

[treeLevel = 1]

lib.menu.1.NO.wrapItemAndSub {
override = <li class="current">|</li>
override.if {
equals.field = shortcut
value.data = page:uid

}
}
[global]

[treeLevel = 2]

lib.menu.1.NO.wrapItemAndSub {
override = <li class="current">|</li>
override.if {
equals.field = shortcut
value.data = page:pid

}
}
[global]
Mark, 15-11-10 14:19:
Es natürlich wie immer kürzer:

lib.menu.1.NO.wrapItemAndSub {
override = <li class="current">|</li>
override.if {
equals.field = shortcut
value.data = leveluid:1

}
}
Manu, 05-01-11 16:34:
Wie würde man das in einem gmenu bewerkstelligen? Ich habe es soweit hinbekommen, dass externe Links angezeigt werden, aber der RO tuts nicht mehr :(
lib.menu_main = HMENU
lib.menu_main.entryLevel = 0
lib.menu_main.excludeUidList = {$excludeNavigation}
lib.menu_main.wrap = <ul>|</ul>
lib.menu_main {
1 = GMENU
1 {
NO.wrap = <li>|</li>
NO {
ATagTitle.field = title
XY = 181,25
backColor = #e4ecf0

###
noLink = 1
allStdWrap.typolink.parameter.cObject = CASE
allStdWrap.typolink.parameter.cObject {
key.field = doktype

default = TEXT
default {
field = uid
default = TEXT
default.field = title
stdWrap.htmlSpecialChars = 1
}
# Seitentyp interne Weiterleitung
4 = TEXT
4 {
field = title
default = TEXT
default.field = shortcut
}
# 3 = Seitentyp externe URL
3 = TEXT
3 {
field = url
default = TEXT
default.field = target
}
}
###

10 = TEXT
10 {
text.field = title // nav_title
fontColor = #5a6e78
fontSize = 18
offset = 0,20
fontFile = fileadmin/fonts/NoSBd___.ttf
text.case = upper
}

}
RO < lib.menu_main.1.NO
RO = 1
RO {
backColor = #e4ecf0
10.fontColor = #aa001d
20 = IMAGE
20.file = fileadmin/images/arrow.gif
20.offset = [10.w]+6,5
}
ACT < lib.menu_main.1.RO
ACT = 1
ACT {
backColor = #e4ecf0
10.fontColor = #066581
20 = IMAGE
20.file = fileadmin/images/arrow_blue.gif
20.offset = [10.w]+6,5
}
}
}
Gregor, 14-07-11 09:12:
Hatte soeben dasselbe Problem. Und ich hab's beim GMENU hinbekommen, indem ich per ATagParams das href-Attribute neu gesetzt habe:

lib.navigation = HMENU
lib.navigation {
1 = GMENU
1 {

NO = 1
NO {
ATagParams.cObject = CASE
ATagParams.cObject {
key.field = doktype
3 = TEXT
3 {
field = url
wrap = href="http://|"
}
}
}
}
}
Florian, 30-09-11 14:40:
Danke für den Tipp. Jetzt habe ich nur das Problem, dass ich eine mehrsprachige Seite habe und die englische Version linkt auf eine andere externe URL als die deutsche.
Wenn ich nur diesen Code verwende, linkt der Menüpunkt aber immer auf die externe URL der Default-Sprache...
Wie kann ich das berücksichtigen?
Florian, 04-10-11 10:14:
OK. Lösung gefunden.
Man muss in der localconf.php der Liste der [FE][pageOverlayFields] das Feld url hinzufügen.

Kommentar hinzufügen

* - Pflichtfeld

*



*
*

Top 10 Updates

Nützliche Links geändert am  24-Apr-2013 06:31:02
Login geändert am  09-Sep-2010 09:31:35
Schöne Schriften mit Google Font API geändert am  20-May-2010 14:36:59
TS basierte Searchbox für Indexed Search geändert am  18-May-2010 16:26:54
TYPO3 SEO geändert am  30-Apr-2010 07:43:20
Suchmaschinenfreundliche grafische Überschriften in TYPO3 geändert am  30-Apr-2010 07:33:56
Erstellen eines einfachen Infocenters mit TYPO3  geändert am  17-Nov-2009 11:11:22
Funktionierendes Section Menu mit TemplaVoila geändert am  05-May-2009 10:42:40
"Nicht im Menü" in Sitemap anzeigen geändert am  05-May-2009 10:12:24
Implementation des DHTML Menüs von brainjar.com  geändert am  01-Feb-2009 13:01:36

Latest comments

17-Jun-2013 19:52:27
uanbsc uanbsc schrieb: 6HvXXh , [url=http://eaupsxaxnvpf.com/]eaupsxaxnvpf[/url],...
config + linkvars
17-Jun-2013 19:42:57
quyfbwk quyfbwk schrieb: QUDiO6 , [url=http://aaounhqufyvw.com/]aaounhqufyvw[/url],...
Menues erstellen mit Daten aus anderen Tabellen als "pages"
17-Jun-2013 15:07:08
qzuqydwhewy qzuqydwhewy schrieb: Jzzf4O , [url=http://nkliagmtgtps.com/]nkliagmtgtps[/url],...
Guestbook
English
Suche: