|
|
Custom plugin routes
|
|
|
====================
|
|
|
|
|
|
To define custom routes for TYPO3 Neos Plugin you have to prepare following variables:
|
|
|
|
|
|
* package name - `Acme.MyPackage`
|
|
|
* package name (lower case and with hyphens instead of dots) - `acme-mypackage`
|
|
|
* sourceName - `someform`
|
|
|
* property - `myvar`
|
|
|
* route name - `myroutename`
|
|
|
|
|
|
Now in `Routes.yaml` of your `Site` or `Package` `Configuration` directory you need to add following lines:
|
|
|
|
|
|
### With params
|
|
|
|
|
|
-
|
|
|
name: 'Reset password confirmation'
|
|
|
uriPattern: '{node}/confirm/{--startingup_grundungassistent_frontenduser-passwordresetform.hash}'
|
|
|
name: 'Name of your route'
|
|
|
uriPattern: '{node}/myroutename/{--acme-mypackage-someform.myvar}'
|
|
|
defaults:
|
|
|
'@package': 'TYPO3.Neos'
|
|
|
'@controller': 'Frontend\Node'
|
|
|
'@action': 'show'
|
|
|
'@format': 'html'
|
|
|
'--startingup_grundungassistent_frontenduser-passwordresetform':
|
|
|
'@package': 'StartingUp.GrundungAssistent.FrontendUser'
|
|
|
'@controller': 'Login'
|
|
|
'@action': 'passwordReset'
|
|
|
'--acme-mypackage-someform':
|
|
|
'@package': 'Acme.MyPackage'
|
|
|
'@controller': 'MyController'
|
|
|
'@action': 'myAction'
|
|
|
'@format': 'html'
|
|
|
routeParts:
|
|
|
node:
|
|
|
handler: TYPO3\Neos\Routing\FrontendNodeRoutePartHandler
|
|
|
appendExceedingArguments: FALSE
|
|
|
|
|
|
### Without params
|
|
|
|
|
|
-
|
|
|
name: 'Name of your route'
|
|
|
uriPattern: '{node}/myroutename'
|
|
|
defaults:
|
|
|
'@package': 'TYPO3.Neos'
|
|
|
'@controller': 'Frontend\Node'
|
|
|
'@action': 'show'
|
|
|
'@format': 'html'
|
|
|
'--acme-mypackage':
|
|
|
'@package': 'Acme.MyPackage'
|
|
|
'@controller': 'MyController'
|
|
|
'@action': 'myAction'
|
|
|
'@format': 'html'
|
|
|
routeParts:
|
|
|
node:
|
|
|
handler: TYPO3\Neos\Routing\FrontendNodeRoutePartHandler
|
|
|
appendExceedingArguments: FALSE
|
|
|
|
|
|
View helper usages
|
|
|
------------------
|
|
|
|
|
|
### Inline
|
|
|
|
|
|
{neos:uri.node(node: node, absolute: 1, arguments: '{
|
|
|
--startingup_grundungassistent_frontenduser-passwordresetform: {
|
|
|
\'@package\': \'StartingUp.GrundungAssistent.FrontendUser\',
|
|
|
\'@controller\': \'Login\',
|
|
|
\'@action\': \'passwordReset\',
|
|
|
hash: user.hash
|
|
|
--acme-mypackage-someform.myvar: {
|
|
|
\'@package\': \'Acme.MyPackage\',
|
|
|
\'@controller\': \'MyController\',
|
|
|
\'@action\': \'myAction\',
|
|
|
myvar: myEntity.property
|
|
|
}
|
|
|
}')}
|
|
|
|
|
|
<neos:uri.node node="{node}" absolute="{true}" arguments="{--startingup_grundungassistent_frontenduser-passwordresetform: '{
|
|
|
\'@package\': \'StartingUp.GrundungAssistent.FrontendUser\',
|
|
|
\'@controller\': \'Login\',
|
|
|
\'@action\': \'passwordReset\',
|
|
|
hash: user.hash}'}" /> |
|
|
\ No newline at end of file |
|
|
### Markup
|
|
|
|
|
|
<neos:uri.node node="{node}" absolute="{true}" arguments="{--acme-mypackage-someform.myvar: '{
|
|
|
\'@package\': \'Acme.MyPackage\',
|
|
|
\'@controller\': \'MyController\',
|
|
|
\'@action\': \'myAction\',
|
|
|
myvar: myEntity.property}'}" /> |
|
|
\ No newline at end of file |