Hallo,
ich habe zuerst ein "normales" GMENU angelegt, dessen Einträge in einer UserFunc gefiltert werden. Das funktioniert wunderbar mit itemArrayProcFunc.
Nun habe ich noch eine Sitemap, die nach den selben Kriterien gefiltert werden muss. Daher möchte ich natürlich auch die selbe userFunc aufrufen. Obwohl ich versucht habe, den aufrufenden Code soweit wie möglich zu übernehmen, wird die userFunc bei der Sitemap gar nicht aufgerufen. Testausgaben darin werden nicht angezeigt.
Hier der Code aus dem funktionierenden Menü, der in einem Basistemplate liegt:
Typoscript-Code:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| page.includeLibs.rechtegal = fileadmin/scripts/userfunctions.php menu2 = HMENU menu2.entryLevel= 1 menu2.cache_period = 0 menu2.1 = GMENU menu2.1{ itemArrayProcFunc = user_functions->user_menu } |
Das funktioniert.
Und hier der Code für die Sitemap, den ich in einem Erweiterungstemplate der Seite, die die Sitemap enthält eingefügt habe:
Typoscript-Code:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| page.includeLibs.auchegal = fileadmin/scripts/userfunctions.php lib.sitemap = COA lib.sitemap { 10 = HMENU 10.cache_period = 0 10.special = directory 10.special.value.field = pages 10.1 = TMENU 10.1 { itemArrayProcFunc = user_functions->user_menu }} - ERROR: Line 11: The script is short of 1 end brace(s) |
Habe den Aufruf nun an einigen Stellen ausprobiert, aber kommt nicht auf den Fehler. Da die Sitemap ja eigentlich auch nur ein normales Menü ist, kann der Fehler ja nur in meinem TS sein.