TYPO3 v9 has reached its end-of-life September 30th, 2021 and is not maintained by the community anymore. Looking for a stable version? Use the version switch on the top left.
You can order Extended Long Term Support (ELTS) here: TYPO3 ELTS.
Fluid / Extbase¶
To find out more about Templating using Fluid and building your own extensions in Extbase, the following resources are recommended:
book: Michael Schams: "TYPO3 Extbase: Modern Extension Development for TYPO3 CMS with Extbase & Fluid" (3rd edition for TYPO3 9, not official documentation)
online resource: Developing TYPO3 Extensions with Extbase and Fluid (official documentation, but partly outdated)
Note that currently, the online resource Developing TYPO3 Extensions with Extbase and Fluid may be partly outdated. The TYPO3 Extbase and Fluid book, 3rd edition by Michael Schams was just released, so it should be up to date.
You may also want to refer to the Fluid ViewHelper reference once you work with Fluid.
"TYPO3 Explained" is part of the official documentation on docs.typo3.org.
It is an extensive resource that aims to gives you an introduction to TYPO3, its extension architecture and a detailed outline of its API. The API Overview covers more than just the public functions of TYPO3, it also explains the concepts and how to use core functionality.
It is (in most parts) well maintained.
Introduction: System Overview
Extension Development (You should read the entire chapter except for "Creating a Distribution")
TYPO3 Explained: Start with the first chapter listed. Some of the sections listed in "TYPO3 Explained" are for specific use cases, which you might never need. We list a few chapters that explain general concepts, that you should definitely read. This is not a complete list:
See Creating a new Extension. It contains a description of how to create a new extension with the Extension Builder.
There are a number of dedicated references for TCA, TSconfig, TypoScript and Fluid. Have a look in this list:
You will definitely need these, if you want to get serious about developing for TYPO3.
You can also look at existing extensions to see how other developers have built their extensions.
All (publicly available) third party extensions are listed in the TYPO3 Extension Repository.
You can do a search, and then click on "Code Insights" to go to the code repository.
Make sure to always choose an extension that supports the TYPO3 version you are using. So, if you are using TYPO3 9, restrict your search to extensions, that already support TYPO3 9.
TYPO3 has gone through several large changes between each major version, so be sure to look at code and documentation for your current version.
Some extensions that are already used as examples in the documentation are:
For Developing Backend Modules:¶
Source: TYPO3 CMS Backend Styleguide
Important: Do not let the notice "Outdated extension" in the TYPO3 Extension Repository confuse you. It is not outdated and you can use it by installing it!
Description: "Presents most supported styles for TYPO3 backend modules. Mocks typography, tables, forms, buttons, flash messages and helpers. More at https://github.com/7elix/TYPO3.CMS.Styleguide."
The extension key is styleguide.
Look at the Core Source-Code¶
Of course, you can also look at the TYPO3 source code.
For online browsing, you can use GitHub.
Again, make sure to look in the correct branch for your version.