Add TypoScript in the backend

At its most basic, TypoScript is entered manually in both the Constants and Setup fields of template records (which are stored in the database in table "sys_template").

This can be done in the Web > Template module in the TYPO3 backend.

Hint

It is best practice to use a Sitepackage extension to bundle various configuration in an extension. See TYPO3 Sitepackage Tutorial.

A TypoScript template as seen in the Web > List module

A TypoScript template as seen in the Web > List module

The Constants and Setup fields of a TypoScript template

Screenshot of table sys_template

If the "t3editor" system extension is not installed or has been disabled via configuration options, the Constants and Setup fields will be normal multi-line text fields.

The Constants and Setup fields without the t3editor enabled

Include TypoScript files

In both the "Constants" and "Setup" fields, the @import syntax can be used to include TypoScript contained inside files:

EXT:site_package/Configuration/TypoScript/setup.typoscript
# Import a single file
@import 'EXT:myproject/Configuration/TypoScript/randomfile.typoscript'

# Import multiple files of a single directory in file name order
@import 'EXT:myproject/Configuration/TypoScript/*.typoscript'

# The filename extension can be omitted and defaults to .typoscript
@import 'EXT:myproject/Configuration/TypoScript/'

# Import TypoScript files with legacy ".txt" extension
@import 'EXT:myproject/Configuration/TypoScript/Setup/*.txt'

Include TypoScript from extensions

It is also possible to "Include static" templates from extensions.

  1. In the Web > Template module, select Info / Modify

  2. Click Edit the whole template record

    Edit the whole template record

    Edit the whole template record

  1. Chose the tab Includes

  2. Click the templates to include in Available Items.

    Screenshot of table sys_template

    Screenshot of table sys_template

Tip

The section Add TypoScript in your extension explains how extension developers can make TypoScript available for inclusion in their extensions.

Include other TypoScript templates

Apart from this, it is also possible to include other TypoScript template records (in the field called "Include Basis Template").

Screenshot of table sys_template

Templates included from another template

Template analyzer

With all those inclusions, it may happen that you lose the overview of the template structure. The Template Analyzer (1) provides an overview of this structure. It shows all the templates that apply to the currently selected page, taking into account inclusions and inheritance along the page tree.

All templates applying to a page, as used by the Introduction Package

Viewing the content of a given template in the Template Analyzer

Templates are taken into consideration from top to bottom, which means that properties defined in one template may be overridden in templates considered at a later point by the TypoScript parser.

In the Template Analyzer, you can click on any listed template (2) to view the content of its "Setup" and "Constants" fields.

Viewing the content of a given template in the Template Analyzer

Viewing the content of a given template in the Template Analyzer

The line numbers are compiled from the first template to be included, which is why the numbers are so high.