TYPO3 v15 dev-main snapshot ()

This commit is contained in:
2026-08-10 22:31:24 +02:00
commit aad9daaefd
1506 changed files with 94005 additions and 0 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

@@ -0,0 +1,219 @@
.. include:: /Includes.rst.txt
.. _editors-basicForm:
===========================
Create a basic contact form
===========================
In this tutorial, you will learn how to create a basic contact form.
Let's define what we need:
- contact information from our visitors: first name, last name, email address
- the message from our visitor: a text area where they can enter their message
- an email to us with their message
- a confirmation message to the visitor after the form has been submitted
All fields will be required fields.
Let's get started:
.. rst-class:: bignums-xxl
#. Create a new form
Go to the :guilabel:`Web > Forms` module and create a new form by clicking on "Create new form".
.. figure:: Images/1_newForm.png
:alt: The form module - click the button
The form module without any forms - click the button to create one.
#. Choose a name
Choose a name for your form - something you will recognize later on - and click "Next"
.. figure:: Images/2_newForm_wizard1.png
:alt: The form creation wizard - step 1
#. Click "Next"
As we are creating a basic form, step 2 is done automatically and we go to step 3. Click "Next" again.
.. figure:: Images/2_newForm_wizard2.png
:alt: The form creation wizard - step 3
#. Create new element
The form editor view will now display your new form as below. Click on "Create new element" to add a field to your form.
.. figure:: Images/3_createElement_1.png
:alt: Create New Element Button
#. Add "First Name"
Create a simple text field for the first name by clicking on "Text" in "Basic Elements".
.. figure:: Images/3_createElement_2.png
:alt: Create New Text Element
#. Set options for "First Name"
Options for your new text field will be displayed in the inspector panel on the right:
.. figure:: Images/3_createElement_3.png
:alt: Fields for a simple text field
Fields for a simple text field.
1. Label: Enter a label for your field - in this case "First Name".
2. Description: Enter a description - something that helps your users to know what they should enter.
3. Placeholder: Enter an example value for the field - this will be used as placeholder in the frontend.
4. Required Field: Click the checkbox to make your field required.
5. Enter an error message for users who forget to fill out the field.
6. Add a "Non-XML text" validator to only allow simple text input.
#. Repeat
Repeat the steps in 6 for the "Last Name" field.
.. figure:: Images/4_lastName.png
:alt: Fields for the "Last Name" text field.
#. Add Email address
Now add an email field. Choose type `email`. Set an error message for if the validation fails.
.. figure:: Images/5_email.png
:alt: Fields for the email field.
#. Add textarea for message
Add a `Textarea` field where the user can enter a message.
.. figure:: Images/6_textarea_1.png
:alt: Choose textarea field.
The "Textarea" type in the overview.
#. Add options for the message field
Set label, description and error messages.
.. figure:: Images/6_textarea_2.png
:alt: Configure textarea field.
Configure the message field.
#. Send an email on form submit
When a user submits a form, we want to be sent an email by TYPO3. In a form,
this is what is called "a finisher" as it happens when the form is "finished".
.. figure:: Images/7_addFinisherEmail_1.png
:alt: Adding a finisher
Adding a finisher
1. Click on the form name on the top left - here you can edit general form settings.
2. Choose a finisher on the right. To send an email to yourself, choose "Email to receiver (you)".
#. Configure the email finisher
Choose a subject, the recipient, name and CC.
.. figure:: Images/7_addFinisherEmail_2.png
:alt: Configuring the finisher
.. figure:: Images/7_addFinisherEmail_3.png
:alt: Configuring the finisher - part two
You can use fields from the form to pre-fill values using the `{+}` button.
Here we configure the sender's name from the first and last names in the form.
#. Save the form
Click on "Save" to save the current state of the form. Even if your form
isn't complete, it's a good idea to save your state frequently to minimize
the risk of losing data.
.. figure:: Images/7_addFinisherEmail_4.png
:alt: Saving the form
#. Add confirmation finisher
Add a "Confirmation message" finisher to display a confirmation/ thank you
message to the user after they have submitted the form.
.. figure:: Images/8_addFinisherConfirmation_1.png
:alt: Choose confirmation finisher
#. Add confirmation message
Set a "Thank You" message in the "Confirmation Finisher" options.
.. figure:: Images/8_addFinisherConfirmation_2.png
:alt: Set a confirmation message
#. Preview the form
Your form is now fully configured and ready to be added to website pages. Save it again and let's preview it.
.. figure:: Images/85_preview.png
:alt: Preview the form
1. Click on the preview icon and see a rudimentary preview of your form. Notice the "Step" headline.
#. Remove the "Step" headline
The "Step" headline above does not make much sense, as there is only a single
step in our form before a user submits it and the headline should be taken
from the page where we will insert the form. To remove it, leave the preview
and click on "Step" in the tree view on the left side. Delete the word "Step".
#. Save the form
Save the form and check everything is ok - now it looks fine. Let's go and insert it on a page.
#. Choose a page for your form
Your form can now be added to a web page. Go to the page module and choose a web page.
.. figure:: Images/9_selectPageForForm.png
:alt: Select a page for your form
1. Go to the page module.
2. Choose a page in the page tree (for example: "Contact" for the Contact form :)).
3. Click on `+ Content` to create a new content element for your form.
#. Insert Plugin
In the content element wizard, choose "Form" (in "Form elements" tab).
.. figure:: Images/10_elementWizard.png
:alt: Select a page for your form
#. Choose your form definition
In the plugin tab, choose the form definition you just created.
.. figure:: Images/10_chosenFormInCE.png
:alt: Choose the form definition
Having a separate form definition allows you to insert the form on many web pages.
You can then customize fields, for example, the headline, by using the "normal" TYPO3
header field to render a headline for your form.
#. Save the content element and enjoy!
Save the content element and view your web page. You can now see your completed form.
.. figure:: Images/11_finishedForm.png
:alt: The finished form
Depending on your frontend, your form might look different.
Congratulations! You have created a fully functional contact form.
+13
View File
@@ -0,0 +1,13 @@
.. include:: /Includes.rst.txt
.. _editorTutorials:
=========
Tutorials
=========
.. toctree::
BasicForm/Index
PhotoContest/Index
Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 301 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 114 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

@@ -0,0 +1,255 @@
.. include:: /Includes.rst.txt
.. _editors-photoContest:
===========================
Create a photo contest form
===========================
In this tutorial, you will learn how to create a photo contest with the form framework.
Let's define what we need:
- contact information from our visitors: name and email address
- a photo upload for our visitors
- an email to us with the participation
- terms and conditions for our contest
- a thank you page after submitting the form
Let's get started:
.. rst-class:: bignums-xxl
#. Create a new form
Go to the ``Forms`` module and create a new form by clicking on "Create new form".
.. figure:: Images/1_createForm.png
:alt: The form module - click the button
The form module with one form - click the button to create a new one.
#. Choose a name
Choose a name for your form - something you will recognize later on - and click "Next"
.. figure:: Images/2_wizard_1.png
:alt: The form creation wizard - step 1
#. Click "Next"
As we are creating a basic form, step 2 will be automatically done and we directly see step 3. Click "Next" again.
.. figure:: Images/2_wizard_2.png
:alt: The form creation wizard - step 3
#. Create new element
You will now see the form editor view for your new form. Click on "Create new element" to add a field to your form. The first field we want to create is the "Name". Choose "Text" from "Basic Elements" to create a simple text field for the first name.
.. figure:: Images/3_createElement_1.png
:alt: Create New Element Button
#. Set options for "Name"
After selecting the "Text" type, we get new options in the inspector panel:
.. figure:: Images/3_createElement_2.png
:alt: Fields for a simple text field
Fields for a simple text field.
1. Label: Enter a label for your field - in this case "Name".
2. Placeholder: Enter an example value for the field - this will be used as placeholder in the frontend.
3. Add a validator "Non-XML text" to only allow simple text input.
#. Create image upload field
Similar to the previous field, add an image upload field. Choose type `Image Upload`.
.. figure:: Images/4_createImageUpload_1.png
:alt: Create Image Upload
#. Configure image upload field
Set options for the image upload - for example choose specific image formats or enter a max file size.
.. figure:: Images/4_createImageUpload_2.png
:alt: Configure Image Upload
The options of the image upload.
#. Create "Terms and Conditions"
To display terms and conditions for our contest, we want to add a simple static text to the form. Choose "Static Text" from the available element types.
.. figure:: Images/5_createStaticText_1.png
:alt: The static text type
Choose "Static Text".
#. Enter "Terms and Conditions"
Fill the text box with the terms and conditions for your contest.
.. figure:: Images/5_createStaticText_2.png
:alt: Set options for Static Text
Set options for static text.
#. Change the headline and buttons
We want to have a nice headline for the form and the next button should read "Summary". To do that, click on "Step" (1) in the form tree and set the fields (2,3) on the right. You don't need to change the previous label, as we are on the first page and there is no previous in this case.
.. figure:: Images/6_setOptionsForStep.png
:alt: Set options for step
#. Create a summary page
We want to create a summary page where the user can confirm his or her data again. Click on "Create new step" on the left to create a new page/step in the form.
.. figure:: Images/7_createSummary_1.png
:alt: Create new step
Create a new step in a form.
.. figure:: Images/7_createSummary_2.png
:alt: Create new step - choose summary
Choose summary as type for your new step
.. figure:: Images/7_createSummary_3.png
:alt: Create new step - configure summary
Configure the summary headline and button labels.
#. Preview the form
Click on the preview button to preview the form.
.. figure:: Images/8_preview.png
:alt: Preview the form
Preview the form.
Oh no! We forgot to create the email field. Let's do that next.
#. Add an email field
Go back to editing the form (1) and click on "Create new element" (2).
.. figure:: Images/9_missingEmail_1.png
:alt: Switch to editing and Create new element
Switch to editing and create new element
.. figure:: Images/9_missingEmail_2.png
:alt: Choose "email address"
The "email address" type
.. figure:: Images/9_missingEmail_3.png
:alt: Configure the email address field
Configure the email address field.
.. figure:: Images/9_missingEmail_4.png
:alt: Move the email address field
Move the email address field to a better position via drag and drop.
#. Save the form
Your form is now fully configured and ready to be inserted on pages.
.. figure:: Images/10_saveTheForm.png
:alt: Save the form
Save the form.
You can save the form and do another review - now it looks fine. Let's go and insert it on a page.
#. Choose a page for your form
The form you configured can now be inserted on any page you want. Go to the page module and choose one.
.. figure:: Images/11_selectPage.png
:alt: Select a page for your form
1. Go to the page module.
2. Choose a page in the page tree (for example: "Contest").
3. Click on `+ Content` to create a new content element.
#. Insert Plugin
From the content element wizard, choose "Form" (in "Form elements" tab).
.. figure:: Images/12_chooseForm.png
:alt: Choose form as type
#. Choose your form definition
In the plugin tab, choose the form definition you just created. You can also use the "normal" TYPO3 fields like header to render a headline for your form.
.. figure:: Images/13_chooseFormDefinition.png
:alt: Choose the form definition
Having a separate form definition allows you to insert the form on many pages, customizing for example the headline in each case.
#. Save the content element
Save the content element and go and view your web page. You can now see your finished form.
.. figure:: Images/14_frontend_1.png
:alt: The finished form - Step 1
Depending on your frontend, your form might look different.
.. figure:: Images/14_frontend_2.png
:alt: The finished form - Step 2
Depending on your frontend, your summary page might look different.
When testing your form, you might notice that it doesn't do anything yet when we fill it. That's bad. Let's change that.
#. Add email finisher
Everytime someone fills the form we want to receive an email with the contest picture. Let's add an email finisher for that:
.. figure:: Images/15_addEmail.png
:alt: Add email finisher
Configure the email finisher
#. Add redirect to "Thank You" page
After submitting the form we want to redirect the user to a thank you page. There's a ready-made finisher for that, too - the "Redirect to a page" finisher:
.. figure:: Images/16_addRedirect_1.png
:alt: Redirect Finisher Options
Redirect finisher with options.
Choose "Redirect to a page" from the finisher menu. Click on the "Page" button to open the page browser.
.. figure:: Images/16_addRedirect_2.png
:alt: Page browser of redirect finisher.
Page browser.
Choose your thank you page.
.. attention::
Make sure that the redirect finisher is the last finisher - after the redirect no other finishers will be executed.
#. Test again - Enjoy!
Save the form and reload the frontend. Now you can test the form again. After submitting you will now be redirected to the thank you page.
.. figure:: Images/17_thankYouPage.png
:alt: Thank you page.
Depending on your frontend, your page might look different.