Menues erstellen mit Daten aus anderen Tabellen als "pages"

Submitting your vote...
Rating: 4.3 of 5. 3 vote(s).
Click the rating bar to rate this item.

Hier ist ein kleines PHP codesnippet das es erlaubt andere tabllen als "pages" zum generieren von Menues zu verwenden.

Es erweitert die userfunc eigenschaft des HMENU special mit der select eigenschaft. Mehr infos in derTsref, select.

 

Erstelle eine datei im "fileadmin" ordner und nenn sie "menuFunc.inc", dann fügst du folgenden php content dort ein:

-- cut --

<?php

class user_menuFunc {

function makeMenuArray($content,$conf) {

$menuArr = array();

$lConf = $conf["userFunc."];

$res = $this->cObj->exec_getQuery($lConf["table"],$lConf["select."]);

if ($error = $GLOBALS['TYPO3_DB']->sql_error()) {

$GLOBALS['TT']->setTSlogMessage($error,3);

} else {

$GLOBALS['TT']->setTSlogMessage('NUMROWS: '.$GLOBALS['TYPO3_DB']->sql_num_rows($res));

while ($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {

$menuArr[] = $row;

}

}

return $menuArr;

}

}

?>

-- cut --

 

Und hier ist ein beispiel wie man diese funktion nutzt um eine liste der tt_address records als TMENU darzustellen. (Es könnte natürlich auch ein GMENU sein).

 

PS: Vergiss nicht das "select" statement in dieser Zeile zu ändern(muss auf die uid des sysfolders mit den tt_address einträgen zeigen):

 

lib.usermenu.special.userFunc.select.pidInList = 4

 

 

 

page.includeLibs.usermenu = fileadmin/menuFunc.inc

lib.usermenu = HMENU
lib.usermenu.special = userfunction
lib.usermenu.special.userFunc = user_menuFunc->makeMenuArray
lib.usermenu.special.userFunc.table = tt_addess
lib.usermenu.special.userFunc.select.pidInList = 4
lib.usermenu.1 = TMENU
lib.usermenu.1 {
  NO {
    doNotLinkIt = 1
    stdWrap.field = user
    # entferne das # von  der nächten zeile wenn du sehen willst welche felder verfügbar sind!
     
    #stdWrap.data = debug:data
    typolink.parameter.field = www
    allWrap = <br>
  }
}

 

 

Dieses Snippet wurde von Peter Klein eingesendet



Comments


janosch, 08-03-07 17:13:
lib.usermenu.special.userFunc.table = tt_addess

sollte eigentlich

lib.usermenu.special.userFunc.table = tt_address

sonst super script danke!
janosch
Wolle, 28-02-11 11:55:
typolink.parameter.field = www
funktioniert bei mir nicht.

Mit
stdWrap.typolink.parameter.field = www
klappt es.

Add comment

* - required field

*



*
*

Top 10 Updates

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

Latest comments

18-Jan-2012 11:03:20
cjjgeb cjjgeb schrieb: qUWC8M <a href="http://yviwfgyvopxz.com/">yviwfgyvopxz</a>
Typolink
18-Jan-2012 05:39:25
Melia Melia schrieb: Stands back from the kybeoard in amazement! Thanks!
Typolink
02-Jan-2012 22:48:33
Dietmar schrieb: Doch, genau das soll es doch sein. Sonst könntest Du ja die Seiten in der Vorschau nicht...
Eigenes vhost für das TYPO3 Backend
English
Suche: