georgringer / news-form-fill
Provide article record to finishers of EXT:form
Fund package maintenance!
georgringer
paypal.me/GeorgRinger/10
www.amazon.de/hz/wishlist/ls/8F573K08TSDG
Patreon
Installs: 3
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
Language:HTML
Type:typo3-cms-extension
Requires
- php: >= 8.2 < 8.4
- georgringer/news: ^10 || ^11 || ^12
- typo3/cms-form: ^12.4.2
This package is auto-updated.
Last update: 2024-10-31 00:34:36 UTC
README
This extension provides information of the news record (EXT:news) to the emails generated by EXT:form.
Typical use case: Imagine events based on news articles. Every article contains a link to a page with the form to be able to register.
Installation
Install the extension with composer req georgringer/news-form-fill
.
Usage
Form Configuration
The newly available finisher needs to be placed before the email finisher(s).
Either use the UI as seen below or add the finisher manually in the yaml file
finishers: - identifier: NewsVariableProvider
After that, place a hidden field in the form with the identifier newsid
- defaultValue: null type: Hidden identifier: newsid label: News
Link to the form
Generate the link to the form with a link like this:
https://example.ddev.site/booking?newsid=123
You can now check if the prefill works by checking the source code of your page. It should contain a hidden field with the news id.
<input id="form-identifier-newsid" type="hidden" name="tx_form_formframework[form-identifier][newsid]" value="1" />
Use the news information in the template
This extension registers a demo layout in the BaseSetup.yaml
file
TYPO3: CMS: Form: prototypes: standard: finishersDefinition: EmailToReceiver: options: templateRootPaths: 1714495718: 'EXT:news_form_fill/Resources/Private/Templates/Finishers/Email/' EmailToSender: options: templateRootPaths: 1714495718: 'EXT:news_form_fill/Resources/Private/Templates/Finishers/Email/'
Take a look at Resources/Private/Templates/Finishers/Email/Default.html
to see how the news information is retrieved in the email.
Currently there is a hardcoded access to the following fields: uid, pid, title, teaser, bodytext.
Thanks to
- Manuel Schnabel for your extension which I learned the most from and also took some code!
- Gernot Hofer for sponsoring the development of this extension