82 lines
3.1 KiB
Plaintext
Executable File
82 lines
3.1 KiB
Plaintext
Executable File
# =============================================================================
|
|
# VITEC menus — Headless / JSON output
|
|
#
|
|
# Three menus are exposed at the page root of the JSON response:
|
|
# - mainNavigation : full hierarchy from root, all visible pages
|
|
# - footerMenu : curated, configured via site setting menu.footer.pageUids
|
|
# - metaMenu : curated, configured via site setting menu.meta.pageUids
|
|
#
|
|
# Each menu uses friendsoftypo3/headless MenuProcessor which:
|
|
# * resolves Shortcut pages to their target
|
|
# * skips pages with "Show in menu = no" (nav_hide=1) by default
|
|
# * marks active / current items
|
|
# * exposes `children` for sub-levels
|
|
# =============================================================================
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Main navigation — full hierarchy
|
|
# -----------------------------------------------------------------------------
|
|
lib.mainNavigation = JSON
|
|
lib.mainNavigation {
|
|
dataProcessing {
|
|
10 = FriendsOfTYPO3\Headless\DataProcessing\MenuProcessor
|
|
10 {
|
|
levels = 10
|
|
expandAll = 1
|
|
includeSpacer = 0
|
|
titleField = nav_title // title
|
|
as = mainNavigation
|
|
}
|
|
}
|
|
}
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Footer menu — curated by site setting (UIDs)
|
|
# -----------------------------------------------------------------------------
|
|
lib.footerMenu = JSON
|
|
lib.footerMenu {
|
|
dataProcessing {
|
|
10 = FriendsOfTYPO3\Headless\DataProcessing\MenuProcessor
|
|
10 {
|
|
special = list
|
|
special.value = {$menu.footer.pageUids}
|
|
levels = 1
|
|
includeSpacer = 0
|
|
titleField = nav_title // title
|
|
as = footerMenu
|
|
}
|
|
}
|
|
}
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Meta menu — curated by site setting (UIDs)
|
|
# -----------------------------------------------------------------------------
|
|
lib.metaMenu = JSON
|
|
lib.metaMenu {
|
|
dataProcessing {
|
|
10 = FriendsOfTYPO3\Headless\DataProcessing\MenuProcessor
|
|
10 {
|
|
special = list
|
|
special.value = {$menu.meta.pageUids}
|
|
levels = 1
|
|
includeSpacer = 0
|
|
titleField = nav_title // title
|
|
as = metaMenu
|
|
}
|
|
}
|
|
}
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Wire them into the page-level JSON output
|
|
# -----------------------------------------------------------------------------
|
|
page.10.fields.mainNavigation =< lib.mainNavigation
|
|
page.10.fields.footerMenu =< lib.footerMenu
|
|
page.10.fields.metaMenu =< lib.metaMenu
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# Favicon / app-icon set (site-wide) — see FaviconsJsonRenderer
|
|
# Icon files: public/fileadmin/icons/
|
|
# -----------------------------------------------------------------------------
|
|
page.10.fields.favicons = USER
|
|
page.10.fields.favicons.userFunc = Evomedien\Vitec\UserFunc\FaviconsJsonRenderer->render
|