Sprechende URLs

Slug-Konfiguration (ab TYPO3 9.5)

routeEnhancers:
  PageTypeSuffix:
    type: PageType
    map:
      fahrzeugsuche-sitemap.xml: 1519148087
      fahrzeugsuche.json: 1469968203
  FahrzeugsucheDetailsPlugin:
    type: Extbase
    extension: Fahrzeugsuche
    plugin: Fahrzeugsuche
    routes:
      -
        routePath: '/fahrzeug-details/{fahrzeug_id}'
        _controller: 'Fahrzeugsuche::search'
        _arguments:
          fahrzeug_id: fahrzeug
      -
        routePath: '/fahrzeug-pdf/{account_id}/{fahrzeug_id}'
        _controller: 'Fahrzeugsuche::createPdf'
        _arguments:
          account_id: account
          fahrzeug_id: fahrzeugId
      -
        routePath: '/fahrzeug-bookmarks-pdf/{bookmarks}'
        _controller: 'Fahrzeugsuche::createBookmarksPdf'
        _arguments:
          bookmarks: bookmarks
    defaultController: 'Fahrzeugsuche::search'
    requirements:
      account_id: '^[a-zA-Z0-9].*$'
      fahrzeug_id: '^[a-zA-Z0-9].*$'
      bookmarks: '^[a-zA-Z0-9].*$'

Realurl-Konfiguration (bis TYPO3 9.5)

$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'] = array (
    '_DEFAULT' => array (
        'postVarSets' => array (
            '_DEFAULT' => array (
                // EXT:fahrzeugsuche start
                'fahrzeug-details' => array(
                    array(
                        'GETvar' => 'tx_fahrzeugsuche_fahrzeugsuche[fahrzeug]',
                    ),
                ),
                'fahrzeug-pdf' => array(
                    array(
                        'GETvar' => 'tx_fahrzeugsuche_fahrzeugsuche[controller]',
                        'valueMap' => array(),
                        'noMatch' => 'bypass',
                    ),
                    array(
                        'GETvar' => 'tx_fahrzeugsuche_fahrzeugsuche[action]',
                        'valueMap' => array(
                            'pdf' => 'createPdf',
                            'bookmarks-pdf' => 'createBookmarksPdf',
                        ),
                        'noMatch' => 'bypass',
                    ),
                    array(
                        'GETvar' => 'tx_fahrzeugsuche_fahrzeugsuche[account]',
                    ),
                    array(
                        'GETvar' => 'tx_fahrzeugsuche_fahrzeugsuche[fahrzeugId]',
                    ),
                ),
                // EXT:fahrzeugsuche end
            ),
        ),
    ),
);